C语言进阶——8.变量分类
1. 本地变量/局部变量
1.1 本地变量/局部变量是什么?
在大括号内定义的变量就是本地变量/局部变量。
1.2 本地变量/局部变量有什么特点?
- 本地变量是定义在代码块内的,可以定义在函数的块内,可以定义在语句的块内。
for(int i=0;i<10;++i){
printf("%d ",i);
}
printf("%d ",i);
可以定义在一个随意的大括弧里面。
{
int n = 0;
printf("%d ",n);
}
printf("%d ",n);
- 程序进入块前,内部变量不存在,离开时失效。
- 块外定义的变量,块内仍然有效。
函数的每次运行,都会产生一个独立的变量空间,在这个空间中的变量,是函数这次运行独有的。
- 定义在函数内部的变量就是本地变量
- 参数也是本地变量
1.3 本地变量/局部变量初始化
- 本地变量不会默认初始化
- 参数在进入函数时被初始化。
本地变量/局部变量的生存期和作用域都是在大括号内。
2. 全局变量
2.1 全局变量是什么?
定义在函数外面的变量称为全局变量
int n;
int main(){
int m;
printf("n=%d\m=%d\n",n,m);
}
2.2 全局变量有什么特点?
全局变量有全局的生存周期和作用域。
- 不属于任何函数。
- 所有函数内部都可以使用。
int<