静态变量和动态变量
静态变量
就是在定义的时刻,有static润饰的变量,情势为
static TYPE var_name = init_value;
动态变量,情势为
TYPE var_name = init_value;
即没有static 润饰。个中的=init_value都可省略。
辨别定义在函数外的全局变量,和函数内的局部变量,作用域,生命周期,及无显式初始化时的初始值,均有区分。
1 动态全局变量:
作用域为全部项目,即终究编译成可执行文件的一切文件中都可以运用动态全局变量。
生命周期为从顺序运转到顺序退出,即贯串全部运转时候。
无显式初始化时默许初始化值为0。
2 静态全局变量:
作用域为当前文件,从定义/声明位置到文件末端。
生命周期为从顺序运转到顺序退出,即贯串全部运转时候。
无显式初始化时默许初始化值为0。
3 动态局部变量:
作用域为当前函数,从定义位置,到其地点的{}的完毕位置。
生命周期为从函数调用到函数退出。
无显式初始化时默许初始化值为随机值。
4 静态局部变量:
作用域为当前函数,从定义位置,到其地点的{}的完毕位置。
生命周期为从顺序运转到顺序退出,即贯串全部运转时候,当下次函数调用时,静态局部变量不会被再次初始化,而是相沿上次函数退出时的值。
无显式初始化时默许初始化值为0。
引荐课程:C言语教程
以上就是静态变量和动态变量的细致内容,更多请关注ki4网别的相干文章!