C语言中的存储类型

C语言中的存储类型

[存储类型] 变量类型 变量名

四种存储类型:

1 auto

auto : 自动存储类型,声明变量生命周期为自动 ,

只修饰局部变量 存储于栈区,作用范围为当前代码块

栈区 : 代码块运行时,被创建,代码块结束,释放回收。

2 static

static: 静态存储类型

static 修饰局部变量时,变为全局变量直到程序结束(生命周期),作用域不变

变存储在静态区,

再次调用函数时,定义变量那句不执行,跳过。

static : 修饰全局变量,如果程序有多个文件组成,只能在本文件内使用

如果文件中的全局变量被static修饰,就会改变链接属性,变为内部链接(默认是外部链接),被修饰后只能在当前文件使用

static 修饰函数,限制函数的作用域,文件作用域,只能在当前文件使用

3 register

register:寄存器存储类型

register修饰局部变量,表示吧局部变量存放CPU寄存器中,但是不一定能存到CPU中。没有存到CPU中和auto一致

4 extem

extem : 外部引用类型,声明外部引用

如果某个全局变量和函数已经定义,文件中使用其他文件的全局变量和函数,通过extem进行外部变量声明引用,执行当前文件的函数时从外部引用。但不能引用static修饰的全局变量和函数。

posted @ 2023-12-19 10:25  龠菜粤爱玩  阅读(96)  评论(0)    收藏  举报