c语言中的整数溢出问题
作者:互联网
1、以以下程序为例:
#include <stdio.h> int main(void) { int i = 2147483647; //int类型可以表示的数值范围为 -2147483648 ~ 2147483647 unsigned int j = 4294967295; //unsigned int的取值范围为0 ~ 4294967295 printf("%d %d %d\n", i, i + 1, i + 2); printf("%u %u %u\n", j, j + 1, j + 2); return 0; }
//运行结果显示,当数值超过数据类型可以表示的最大范围时,数值会从头开始,比如i为 2147483648将从头显示-2147483648,
//j超过其最大可以表示的范围4294967295时,将从0开始表示超出的数值。
标签:语言,int,printf,unsigned,整数,数值,4294967295,2147483648,溢出 来源: https://www.cnblogs.com/liujiaxin2018/p/15004667.html