我分別在菜鳥,洛谷,http://cplusplus.com的在線ide上運行都會卡死,很奇怪

#include &

using namespace std;

int main()

{

signed char a = 0xe0;

unsigned int b = a;

unsigned char c = a;

cout &

cout &

cout &

return 0;

}


沒有人注意到 在線 ide 嗎?所以有一種可能,是你沒有在頁面上事先輸入 那些 cin &>&> 要讀取的數據。


會卡死?出亂碼可以理解,會卡死說明這些在線ide做的不咋地。


ide不行:

à

4294967264

à

這個是我的輸出,linux命令行下的


為什麼你寫這麼簡單的代碼都沒注意到signed char的範圍?


我的沒有卡,只是顯示的是亂碼。

為何要寫如此明顯錯誤的方式,而不加類型強制轉換呢?


輸出的時候沒處理非法字元吧。對於大多數編碼方式,單獨的0x80以上的位元組都是無效的。


知道為什麼C++是強類型語言嗎?

就是擔心有人整天寫這樣的代碼


推薦閱讀:
相关文章