C++中int類型取值范圍問題


在這里引用一下百度某網友的解釋:

問:

C++中int的范圍是多少?為什么我試了最大可以達到2^31-1呢?不應該是最大32767嗎?

答:

在標准C++中的int的字節長度小於long大於short就行了,多數平台上int占4個字節(32位,不是16位!),所以能表示的范圍就是2的32次方,表示為數值是-2^(32-1) ~ 2^(32-1) -1 ( ^ 表示成方 )(就是 -2^31 ~ 2^31 - 1, 而不是2^16...)
根據不同的需要,int包括以下定義
unsigned short int 無符號2字節短整形
short int 帶符號2字節短整形 - 32768 ~ 32767
unsigned int 無符號4字節整形 0 ~ 2^32 -1 (這個是對的)
int 4字節整形 - 2^31 ~ 2^31 - 1
int 64 64位(8字節)整形 - 2^63 ~ 2^63 - 1 (這個很少用到,一般是表示為高位int和低位int)
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM