C语言编程时,经常遇到整数运算之后的结果超出计算机能表示数据范围,即溢出。请思考如果发生溢出,会产生什么后果?应该如何避免数据溢出?
5条回答
一只蚂蝼 2022-04-15 09:45关注无符号超出上限会回到0,即无符号8位整型上限为255,这种类型的变量值到255再加一结果为0。
但是看需要,一般来说大多数的值用long类型都能存下来,而且如果算差值的话重置了也不影响,即无符号8位整型 0 - 255 = 1;评论 打赏 举报解决 1无用
C语言编程时,经常遇到整数运算之后的结果超出计算机能表示数据范围,即溢出。请思考如果发生溢出,会产生什么后果?应该如何避免数据溢出?
无符号超出上限会回到0,即无符号8位整型上限为255,这种类型的变量值到255再加一结果为0。
但是看需要,一般来说大多数的值用long类型都能存下来,而且如果算差值的话重置了也不影响,即无符号8位整型 0 - 255 = 1;