变量的4种存储类型
作者:互联网
所有的数据都有两种类型:数据类型,存储类型。
数据类型:如int, float等
存储类型:一共有四种存储类型的变量,分别为自动变量(auto)、静态变量(static)、外部变量(extern)以及
寄存器变量(register)
auto - 函数中所有的非静态局部变量。
auto型一般是函数内部定义的变量(常用,且前面不加auto)。
register-不属于内存的一部分,所以不能取地址。一般经常被使用的变量(如一变量要计算几千次)可以
设置成寄存器,register变量会被存在寄存器中,计算速度远快于存在内存中的非register变量。
寄存器变量不能定义为全局变量,一般不需要用register关键字。
static-在变量前加上static关键字的变量。
静态变量生命周期和全局变量一致,(局部)静态变量但只能在定义的函数内访问。无论调用几次,只初始化一次。
全局静态变量,定义之后,下面的任意函数都可以访问。
extern-把全局变量在其他源文件中声明成extern变量,可以扩展该全局变量的作用域至声明的那个文件,其本质就是
对全局变量作用域的扩展。
变量的作用域和生存周期
标签:存储,变量,静态,auto,register,寄存器,类型,全局变量 来源: https://www.cnblogs.com/ylww/p/16340165.html