这很简单,但我无法解释它。我宣布4个变量,并打印出来在C++:C++中非初始化变量的值
#include <iostream>
using namespace std;
int main(){
int a, b, c, d;
cout << "a = " << a << endl;
cout << "b = " << b << endl;
cout << "c = " << c << endl;
cout << "d = " << d << endl;
return 0;
}
,其结果是:
a = 0
b = 1
c = 0
d = 0
我想如果我不为变量初始化值,程序将采取一些随机的来自内存的价值。或者至少它全部等于零。我不知道这些价值的差异来自哪里。
这是不是因为特定变量b
,如果切换那些“COUT < <”行,第二行总能给值= 1
谁能解释这对我来说,请。非常感谢。
尚未初始化的变量的值在C++中是未定义的 – litelite
我想这些未定义的变量是随机值,尝试显示它们是UB。 –
打开编译器警告以使用未初始化的变量。它会帮助你编写实际工作的代码。 – tadman