2017-10-15 50 views
-4
printf("41 + 51 %d?\n", 41 + 51); 

輸出:9?爲什麼輸出5?在C 4字節與INT計算機

這是我的C教科書exercsie。

+0

我的GCC編譯器提供正確的輸出。 – rsp

+4

如果上面的代碼真的產生了這個輸出,那麼你需要尋找另一個編譯器,因爲你現在的編譯器是廢話。 – Vroomfondel

+0

而不是僅僅將問題文本轉錄爲SO問題併發布,您應該將其編輯到源文件中,編譯,鏈接並測試它。假如你這樣做,你會發現你的抄寫錯誤之前@flaviodesousa需要解開它:( –

回答

7

它不是。你不是寫2l+3l(小寫字母L)嗎?在這種情況下,他們成爲long int號碼,並返回你的5

編輯:同爲編輯41+51 == 92 VS 4l+5l == 9

+4

眼虎 - 這個評論是非常有用的 – Stargateur

+1

啊..üR右..我的錯。 – gunmuk

相關問題