c语言中32位int型数据在运算的时候可能会出现溢出的情况,如:

-2147483648-1会得到什么结果?

-2147483648乘(-1)会得到什么结果?

2147483647+1会得到什么结果?

在编译器中运行一下得到的结果分别是:

-2147483648-1=2147483647;

-2147483648乘(-1)=2147483647

2147483647+1=-2147483648

下面解释出现这几个情况的原因:

①-2147483648的二进制表示为1000 0000 0000 0000 0000 0000 0000 0000,a-1=1000 0000 0000 0000 0000 0000 0000 0000+FFFFFFFF

很明显,这里会溢出,结果将变为7FFFFFFFF,用int表示就是2147483647。

②-2147483648*(-1),对-2147483648按位取反,得到7FFFFFFF就是2147483647。

③2147483647的二进制表示为7FFFFFFF,加1之后就变为了80000000,结果就是-2147483648。

INT_MAX (2147483647) 和INT_MIN (-2147483648)溢出的更多相关文章

  1. INT_MIN与溢出

    隔了好久没更新了,由于我在学习PL和编译器/解释器的知识. 挺好奇这方面的,由于没有学过相关的课程.所以学起来有点吃力,进展缓慢.所以导致没啥可写的. 今天看到这么一段话: 32位的int型的取值是2 ...

  2. 8. String to Integer (整数的溢出)

    Implement atoi to convert a string to an integer. If no valid conversion could be performed, a zero ...

  3. 8. String to Integer (atoi)

    题目: Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input ca ...

  4. String to Integer (atoi)

    Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. ...

  5. 【leetcode】String to Integer (atoi)

    String to Integer (atoi) Implement atoi to convert a string to an integer. Hint: Carefully consider ...

  6. 【LeetCode】8. String to Integer (atoi) 字符串转整数

    题目: Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input ca ...

  7. 【String to Integer (atoi) 】cpp

    题目: Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input ca ...

  8. leetcode:String to Integer (atoi)

    Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. ...

  9. String to Integer (atoi) - 复杂的测试

    这个题..是要把字符串转为整数.注意是整数,我看到整数的时候松了一口气,没有小数点的判断应该更好做.而且基本的转化函数我想每个程序员都无法忘记: res=res*+(str[i]-'); 其实就是这么 ...

随机推荐

  1. POJ 1755 Triathlon [半平面交 线性规划]

    Triathlon Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 6912   Accepted: 1790 Descrip ...

  2. CentOS 6.5 Web服务器搭建

    安装MySQL 首先,进入终端,输入 [root@localhost ~]# yum install mysql mysql-server 即可安装Mysql 按照成功以后,让MySQL随系统启动 [ ...

  3. AMD && CMD

    前言 JavaScript初衷:实现简单的页面交互逻辑,寥寥数语即可: 随着web2.0时代的到来,Ajax技术得到广泛应用,jQuery等前端库层出不穷,前端代码日益膨胀 问题: 这时候JavaSc ...

  4. Zabbix的网络发现

      Zabbix的网络发现 Zabbix的网络发现功能,可以让我们发现网络中的主机或者服务,并在发现该设备后做出相应的操作; 它可以用HTTP.ICMP.SSH.LDAP.TCP.SNMP.Telne ...

  5. [Python Study Notes]Socket模拟ssh执行cmd并记录遇到的问题

    服务器端: 流程: 1.创建servert实例 2.绑定地址和端口 3.开始监听 4.创建客户端连接实例 5.等待客户端的消息 6.......... # The_author = 'liu66' # ...

  6. Word Press使用

    邮件发送功能插件:Easy WP SMTP LNMP一键包网站环境WordPress程序无法后台切换安装主题 https://help.aliyun.com/document_detail/44619 ...

  7. javac编译乱码

    PersonTest.java:1: 错误: 非法字符: \65279 解决途径如下 用记事本打开java源文件,另存为ANSI格式 如果java文件包含中文字符,使用-encoding gbk格式进 ...

  8. RTLabel 的简单使用

    RTLabel 基于富文本的格式,适用于iOS,类似HTML的标记. RTLabel 基于UILabel类的拓展,能够支持Html标记的富文本显示,它是基于Core Text,因此也支持Core Te ...

  9. VS2015安装时问题汇总

    安装VS2015遇到teamexplorer严重错误 在控制台管理员权限执行: fsutil behavior set SymlinkEvaluation L2L:1 L2R:1 R2L:1 R2R: ...

  10. 隱藏在素數規律中的Pi -- BZOJ1041解題報告

    退役狗在刷程書的過程中看到了一個有趣的視頻, 講解了一個有趣的問題. 在網上隨便搜索了一下居然還真的找到了一道以它爲背景的OI題目, BZOJ1041. 下面的內容會首先回顧一下視頻所討論的知識, 有 ...