1 全局变量
GCC编译器下各类型全局变量初始值
类型 | 初始值 |
---|---|
数字的变量类型 | 0 |
bool | false |
string | 空字符串 |
2 局部变量
局部变量在没有赋值以前的值是不确定的,所以在声明局部变量的时候一定要初始化。特别是存在递归调用时。
举例:
//例1
#include <iostream>
#include <string.h>
using namespace std;
int add(int m)
{
int a;
cout<<a<<endl;
if(!m) return 0;
add(--m);
}
int main()
{
add(5);
return 0;
}
代码结果为
0
32734
32734
32734
32734
32734
//例2
#include <iostream>
#include <string.h>
using namespace std;
int add()
{
int a;
cout<<a<<endl;
return 0;
}
int main()
{
for(int i = 0;i < 5;i++) add();
return 0;
}
结果
0
0
0
0
0