簡體   English   中英

為什么輸入char返回不同的值?

[英]Why does type char return a different value?

如果char可以容納的最大值是255,那么如何將char number類型的變量設置為等於= 255; 然后std::cout << number; 程序返回\\377

\\377 255。

\\N為您提供由八進制N表示的值。

十進制255是八進制377是二進制1111 1111是十六進制FF。

還應注意,如果系統/編譯器上的char是無符號的且是8位的,則char可以容納的最大值僅為255。 一個已簽名的char不會上升那么高,並且如果您嘗試將其填充,則會溢出。 您可能想要使用unsigned char來確定性(如果您確實偏執:P,則使用assert(CHAR_BIT==8) )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM