(1).全局变量:在函数外部定义的变量,或者在程序头部定义的变量,可以在程序的全局使用。
#include <iostream> int a; void writeLine() { std::cout << a << std::endl; } int main() { a = 10; writeLine(); return 0; }
例如int a定义了全局变量,在main函数中被赋值,writeLine函数中去使用。输出10.
(2).局部变量:在函数内定义的变量,或者说是在代码块内定义的变量,只能在函数内或者代码块有效,其他地方使用不了
#include <iostream> void writeLine() { std::cout << a << std::endl; } int main() { int a = 10; writeLine(); return 0; }
例如在main函数定义的变量无法在writeLine中使用
(3).注意:局部变量定义后您必须在程序中对其初始化(虽然部分编译器不强制限制,但是建议遵守规范),全局变量如果不初始化,系统会自动初始化,自动初始化的值参考下面的表
数据类型 | 初始化默认值 |
---|---|
int | 0 |
char | '\0' |
float | 0 |
double | 0 |
pointer | NULL |