在C/C++中,为什么全局变量和静态变量初始化为默认值?
为什么不留下垃圾值呢?这有什么特别的原因吗?
可能重复:
为什么全局变量和静态变量初始化为默认值?
看代码,
#include <stdio.h>
int a;
int main(void)
{
int i;
printf("%d %d\n", a, i);
}
Run Code Online (Sandbox Code Playgroud)
产量
0 8683508
Run Code Online (Sandbox Code Playgroud)
这里'a'用'0'初始化,但'i'用'垃圾值'初始化.为什么?