1
我有以下for loop
:字符變量,如果語句錯誤C++
string temp;
int responseInt[10][10] = { {0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0}};
for (int i = 0; i < numberPros; i++)
{
for (int j = 0; j < numberRes; j++)
{
cout << "Is " << process[i] << " holding (h), requesting (r), or doing nothing (n) to " << resources[j] << " ?: ";
cin >> temp;
if (temp == 'n')
responseInt[i][j] = 0;
else if (temp == 'h')
responseInt[i][j] == -1;
else if (temp == 'r')
responseInt[i][j] == 1;
}
}
然而,這就像如果if
語句將被忽略,因爲對於responseInt
的默認值是從來沒有改變過,即使我鍵入h
或r
或n
。
我已經嘗試過使用字符串,但同樣的事情發生。
任何幫助,將不勝感激。
'temp'是一個'string',但''n'',''h''和''r''是'char's。你需要比較喜歡。 –
'=='和'='不是一回事。你從來沒有給'responseInt'的元素賦「0」。 –
@MilesBudnek現在我覺得很愚蠢。半個小時看着我的代碼,特別是if語句,我沒注意到。謝謝,這解決了我的問題! – Jack