|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
Q:以下只有在使用时才为该类型变量分配内存的存储类型的是()
auto和static
auto和register
register和static
extern和register
A:
extern、register、static、auto分别是定义外部变量、寄存器变量、静态变量、自动变量
其中,自动变量(auto)和寄存器变量(register)属于动态存储,调用时临时分配单元;而静态变量(static)和外部变量(extern)属于静态存储,在整个程时都存在.
函数中的形参、局部变量,包括复合语句的中定义的局部变量都具有自动变量。自动变量拥有代码块作用域,自动存储期和空连接属性。
寄存器是存在于 CPU 的内部的,寄存器变量和自动变量在很多方面的是一样的
作用于文件作用域的 static 和 extern,我们上一节已经讲过了,static 关键字使得默认具有 external 链接属性的标识符变成 internal 链接属性,而 extern 关键字是用于告诉编译器这个变量或函数在别的地方已经定义过了,先去别的地方找找,不要急着报错。
|
|