これは簡単ですが、説明できません。私は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
私は変数の値を初期化しない場合、プログラムはいくつかのランダムかかりますと思いましたそれのためのメモリからの値。少なくとも、それはすべてゼロに等しい。私はそれらの値の違いがどこから来るのか分かりません。
私はそれらの「coutを< <」ラインを切り替える場合、これは、理由は特定の変数b
ではありませんが、二行目は、常に値を与える= 1
誰もが、私のためにこれをしてください説明することができます。どうもありがとうございます。
初期化されていない変数の値はC++では定義されていません – litelite
未定義変数はランダム値で、それらを表示しようとするのはUBだとします。 –
初期化されていない変数を使用する場合は、コンパイラの警告をオンにします。実際に動作するコードを書くのに役立ちます。 – tadman