作用域:
程序设计概念:通常来说,一段程序代码中所用到的名字并不总是有效/可用的
而限定这个名字的可用性的代码范围就是这个名字的作用域(通俗来讲,这段代码在哪个地方可用,哪个地方就是它的作用域)
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int a = 10;
printf("%d", a);
return 0;
}
a创建的变量可以在printf("%d",a);中使用,所以printf(“%d”,a):是它的作用域
局部变量的作用域:变量所在的局部范围
全局变量的作用域:整个工程
#include <stdio.h>
int a = 10;
int main()
{
int a = 1;
printf("%d", a);//结果为1,当局部变量和全局变量冲突时候,局部变量优先
return 0;
}
假如我们另一个源文件写的全局变量直接在源文件中使用,那么函数将会报错
这个时候我们需要声明一下变量
用extern int a;
这个时候我们再运行就可以成功运行了
extern的意思是虽然另一个源文件有一个全局变量但是我不清楚是否有,所以需要用extern来告诉它有这样一个全局变量
生命周期:
变量的生命周期:变量的创建和销毁之间的时间段
局部变量的生命周期:进入局部范围生命周期开始,出局部范围生命周期结束
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int a = 10;
printf("%d", a);
return 0;
}
比如这个局部变量的周期是int a=10;——printf(“%d”,a);
全局变量的生命周期:整个程序的生命周期