0
在這段代碼中,0的答案是正確的,但我以-5結尾。那麼爲什麼這個簡單的算術計算錯了?可能發生了什麼?兩個變量在調試器中顯示爲0,但是減去給出-5
int daysFromCurrentDay = (i-(1 - weekDisplay));
// daysFromCurrentDay shows as 0 in the debugger.
// currentDay shows as 0 in the debugger.
daysFromCurrentDay -= currentDay;
// daysFromCurrentDay now shows as -5... What??
很容易證明你的斷言'0-0 = -5'是錯誤的,所以除非你可以發佈更多的上下文,否則這可能是由於用戶調試器錯誤。 – Alan
@Alan它在它之前設置了幾行,而不是在代碼中的其他位置設置。 –
嗯只是從LLDB更改爲GDB,currentDay現在顯示爲5而不是0.不知道LLDB出了什麼問題,但至少現在我可以調試問題並修復它。 –