C语言复习5--变量属性

在c语言中,变量也是有自己的属性的。C语言为变量提供了4种属性 auto,register,extern,static;
接下来进行详细说明
1 。
auto 
auto在C语言中为局部变量的默认属性、
auto表明变量储存在栈上

编译器默认所有局部变量为auto的;

2 。register

register将局部变量储存于寄存器中

register只是请求,不一定能成功

register的值必须是寄存器能接受的值

register的变量不能用&取得地址

注意register的变量不能是全局变量

register变量的原因:寄存器效率非常快,c语言设计者为了效率设计了register。

static

static关键字表明变量带有静态属性;

static修饰的变量存储于静态存储区

static还具有作用域限定的作用

static修饰的变量只能在声明的文件中进行访问

static修饰的函数也只能在声明的文件中进行访问

static修饰的变量具有全局生命周期;

extern

extern告诉编译器变量是在文件的其他地方分配空间

extern告诉编译器函数是在文件的其他地方定义

使用如下

extern int add(void);

int main()

{

//code


    return 0;

}

int add(void)

{

    return 15;

}

学习交流群199546072

猜你喜欢

转载自blog.csdn.net/qq_39809601/article/details/80976121