我聲明我的可變功能條件被滿足
int exceedLimit = 0;
我調用一個函數
compareLimit(selectChannel,exceedLimit);
此功能檢查選擇信道的當前值,並且如果它超過了當前設定的極限(上限設爲100,下限爲50)。默認情況下,它不應該被觸發,直到用戶改變一些值。
int compareLimit (int channelID, int isLimitExceeded)
{
if (temperatureChannel[channelID].currentTemperature > temperatureChannel[channelID].highLimit || temperatureChannel[channelID].currentTemperature < temperatureChannel[channelID].lowLimit)
isLimitExceeded = 2;
else
isLimitExceeded = 1;
return isLimitExceeded;
}
現在,這裏是在下一行代碼的問題....在前面的功能我回到isLimitExceeded,然後我嘗試在返回的值相匹配,以確定是否報警狀態應該引起OT沒有。這個if語句compareLimit後立即書面
if (exceedLimit = 2)
logSubsystem();
當我運行這個程序,我exceedLimit立即觸發和我logsubsystem函數被調用...但是這怎麼可能,因爲我在我的cpp文件的開頭聲明exceedLimit = 0
??
經典錯誤:'exceedLimit = 2'需要多一個'='。 – cnicutar 2013-03-27 21:32:07
'if(exceedLimit = 2)' - >'if(exceedLimit == 2)' – imreal 2013-03-27 21:32:11
[這就是爲什麼我要投票並關閉。](http://meta.stackexchange.com/questions/167342/ close-all-the-typo-questions) – 2013-03-27 21:35:10