我是靠谱客的博主 酷炫羊,这篇文章主要介绍数值溢出运算,现在分享给大家,希望可以做个参考。

复制代码
1
2
3
4
char chr=127; int sum=100; chr+=1; sum+=chr;

chr是char类型,共八位。赋值127。8位为0111 1111。

此时若用%d格式打印出来时,规则是,看最左侧为0.为正,

绝对值为2^7-1,即127。chr++后,

二进制为1000 0000。用%d打印出来为,最左侧为1,为负值。

绝对值,要考虑8位。及2^7.即为-128。

char类型的变量,8位,若有符号,范围为-128~~127。若

无符号,为0~~255。所以,sum的值为100+(-128)=-128


-1如何表示呢?

是1的反码+1.即0xFFFF FFFF



最后

以上就是酷炫羊最近收集整理的关于数值溢出运算的全部内容,更多相关数值溢出运算内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(101)

评论列表共有 0 条评论

立即
投稿
返回
顶部