C语言:数据类型(二)
目录
变量分类
全局变量
局部变量
常量分类
字面常量
const 修饰的长变量
#define 定义的标识符常量
枚举常量
变量分类
- 全局变量
全局变量即为在代码块外部定义的变量
- 局部变量
局部变量即为在代码块内部定义的变量
void test(){ int a=0;}int b=0;int main(void){ return 0;}
在上述这段代码中,a在main()函数内部定义,即为局部变量
b在代码块外部定义,b即为全局变量
全局变量和局部变量的作用域和生命周期不同
那么什么是作用域和生命周期呢?
- 作用域:对于一段程序代码中用到的变量名并不总是有效的,限定这个名字的可用性的代码范围就是这个变量名的作用域
- 生命周期:变量的创建到销毁的时间段
全局变量
例如上述代码,对于全局变量b来说,b的作用区域是整个工程,只要是在这个工程里面,每个地方都可以用b,并且b的生命周期和整个工程的生命周期是一样的。
局部变量
例如上述代码,对于局部变量a来说,a的作用区域只能是test()函数内部,其他地方不能使用这个变量a,并且a的生命周期遵循test()函数,调用test()函数,a就创建,调用完test()函数,a就随着test()函数销毁。
常量分类
字面常量
比如整形常量5,字符常量‘a’,浮点数常量3.14,字符串常量"abcdef",都属于字面常量
const 修饰的长变量
int main(){ const int a = 10; return 0;}
在上述代码中,a就是const修饰的长变量
#define 定义的标识符常量
#include#define MAX 10int main(void){ printf("%d",MAX); //屏幕上就会打印出来 10}
上述代码中,MAX就是#define 定义的标识符常量,这种情况一般都是全部用大写字母来定义。
枚举常量
枚举常量在后续的博客中会介绍