您的位置:首页 > 编程语言 > C语言/C++

C语言变量定义问题

2014-07-14 22:01 232 查看
变量存储类别

[存储类别说明符] 类型标识符变量 [,变量];

存储类别说明符自动auto(缺省)、静态static、寄存器register、外部extern

Auto系统自动分配,存储在动态区

Static 存储在静态区,并且限定变量的作用域,只能是在定义它的文件内或函数内,其他文件和函数不得调用

Register 涉及反复运算时,将变量存储在CPU内部寄存器,避免每次内存访问,提高效率。实际上寄存器十分有限,且受数据类型限制,所以只在特殊操作中起作用!

Extern 当需要调用另一个文件内所定义的变量时,需要用到extern关键字。假设,

a.c

int a;

static int b;

int main(){ ……. return 0:}

b.c

extern int a;可以引用外部定义的int a

extern int b;不可以引用外部定义的int b,static限定int b只能在a.c中使用

int main(){ ……. return 0:}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: