auto为C语言局部变量的默认属性
static指明变量的静态属性,也具有作用域限定符的意义
static修饰的全局变量作用域只是生命的文件中,修饰的函数作用域只是声明的文件中
register指明将变量存储于寄存器中,只是请求寄存器变量,不一定请求成功。register变量必须是CPU寄存器可以接受的值,不能用&运算符获取其地址。变量长度必须是CPU可接受的。
auto变量存储在程序的栈中,默认属性
static存储在程序静态区中
register变量请求存储在CPU寄存器中
全局变量不能为auto和register。
全局变量和局部变量存储在内存静态区,register变量存储在寄存器,局部变量存放在栈区。所以,不能定义auto,或者register的全局变量。
静态局部变量只会被初始化一次。