(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 |