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)
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。