//【C Prime Plus】学习笔记,Chapter 3, 整型溢出 (integer overflow)
// Page 111
#include <stdio.h>
int main(void)
{
int i = 2147483647; // 32位最大整型数
unsigned int j = 4294967295; // 32位无符号最大整型数
printf("%d, %d, %d\n",i,i+1,i+2);
printf("%u, %u, %u\n",j,j+1,j+2);
//---
return 0;
}
/* 输出
2147483647,-2147483648,-2147483647
4294967295,0,1
//--
类似于取模运算,比如时针每到最大的12点后再一走就变成最小的0:
也就是最大整型加1后,则从最小的整数开始
无符号最大整型加1后,则从0开始。
*/
【C Prime Plus】学习笔记,Chapter 3, 整型溢出 (integer overflow)
本文通过示例代码展示了32位整型和无符号整型在达到最大值后加1时发生的溢出现象。解释了整型溢出类似于取模运算的过程,即当整型数值到达边界再增加时会回到最小值。

被折叠的 条评论
为什么被折叠?



