变量
存储类型
auto register static extern
变量在内存空间中的首地址,称为变量的地址。
变量的定义形式:
<存储类型> <数据类型> <变量名>
存储类型:
auto register static extern
auto (不写默认是auto)
局部变量
auto 变量的值是随机的,比如:
int a;
printf("%d", a);
这个时候输出的值就是不确定的
register (寄存器变量)
寄存器内的变量是没有地址的
static ( 静态存储类型变量)
static声明的变量只会从初始化一次,生存周期持续到程序结束。
static声明的局部变量作用域不会变
值默认是0
static 修饰的全局变量其他文件无法使用
在内存中以固定地址存放,而不是以堆栈方式存放
只要程序没结束,它在内存中就不会被销毁
只属于当前文件,其他文件无法调用
extern (外部参照引用型)
全局变量是可以被其他文件中的函数和程序段使用的,而extern声明的变量是引用在其他文件中函数体外部声明的变量