私は出力が70だろうと思った? (20 + 20 + 20 + 10 = 70)なぜそれは大きいのですか?どうしたのですか? C++初心者ここに
#include <iostream>
using namespace std;
int main()
{
int a,b,c=20;
int d=10;
int sum = a+b+c+d;
cout << sum;
return 0;
}
私は出力が70だろうと思った? (20 + 20 + 20 + 10 = 70)なぜそれは大きいのですか?どうしたのですか? C++初心者ここに
#include <iostream>
using namespace std;
int main()
{
int a,b,c=20;
int d=10;
int sum = a+b+c+d;
cout << sum;
return 0;
}
Cあなたは20に初期化する唯一の変数、他の2つの変数 (とB)を保持しているごみ..ある
あなたの数学計算は未定義の動作です。
問題は、変数aとbを初期化していないことです。つまり、プログラムを実行しようとすると、コンピュータはメモリ内でそれぞれに使用する値を探しており、その数は非常に大きくても非常に少なくてもかまいません。これを試してみてください:
#include <iostream>
using namespace std;
int main()
{
int a = 20,b = 20,c=20; //here, a and b are defined
int d=10;
int sum = a+b+c+d;
cout << sum;
return 0;
}
画像としてのポストコードはありません。 (P.S:aとbの値はユニット化されていますが、得られる結果はランダムです) – Borgleader
わかりません?? –
あなたは 'a'と' b'に値を与えませんでした。画像だけでなく、質問にコードを投稿してください。 – Galik