首页 > 代码库 > c语言关键字表示范围之int

c语言关键字表示范围之int

int的最大值加1是什么?
不同编译环境int在内存中固所占字节数不一定相同。以常见的4个字节为例,32位补码表示的数最大为0后面31个1,如果再加1,就变成1后面31个0,对于补码最高为1就是负数。0后面31个1的值为2^31-1,1后面31个0的值为-2^31,而补码的表示范围为-2^31~2^31-1,也就是说最大值再加1又折回去了。所以,补码表示的数不断加1,会从最小值一直增加到最大值,然后再回到最小值。
技术分享
这张表是在网上找的,侵权删。
数字32.64表示系统,ILP分别表示int,long,pointer,LL表示long long。
还有一些不理解,懂的同志帮忙解释一下这张表,谢了!

c语言关键字表示范围之int