#include <iostream>
#include <limits.h>
using namespace std;
int main()
{cout<<INT_MAX-INT_MIN<<endl;//输出-1return 0;
}
  • 首先INT_MAX是int所能够正确存储的最大整形,是一个很大的正整数
  • INT_MIN是int所能够正确存储的最小整形,是一个很小的负整数。
  • 所以很大的正整数减去很小的负整数,将会是一个比INT_MAX还要大的正整数,而int所能正常存储的最大整数是INT_MAX,所以相减后的结果肯定不能正常存储,也就是说会发生溢出,最终导致结果为-1。
  • 强烈建议首先看下我的这篇文章,便于理解下面的内容。
    int是4字节32位,它能够保存的最大正整数二进制形式如下:
    011111........1(31个1)
    它所能够保存的最小负整数如下:
    10000..........0(31个0)
    两者相减以后,最左边0-1发生溢出,结果为1,所以最终相减的结果变为:
    111..............(32个1)。
    而按照补码的方式计算,改结果等于1。
  • 总结:计算机中整形数的表示可以这样记忆,从0开始00000.......1表示1,000000.......10表示2,依次递增,直到01111111......1111表示最大的正数。最大蒸熟在加一就成了1000000......0000表示最小负数,10000000........01表示第二小负数,依次递增。
  • 如果放在数轴上就形成了一个环:

【C/C++】为什么INT_MAX(整形最大值)减去INT_MIN(整形最小值)等于-1相关推荐

  1. 栈与队列9——最大值减去最小值小于或等于num的子数组的数量

    题目 给定数组arr和整数num,共返回有多少个子数组满足如下情况: max(arr[i..j])-min(arr[i..j])<=num max表示子数组arr[i..j]中的最大值,min表 ...

  2. 最大值减去最小值小于或等于num的子数组数量

    题目:给定数组arr和整数num,共返回有多少个子数组满足如下情况:子数组中的最大值减去最小值小于或等于num. 要求,时间复杂度O(N). 基本思路: 首先明确两点: 1.如果子数组arr[i-j] ...

  3. 左神算法:最大值减去最小值小于或等于num的子数组的数量(Java版)

    本题来自左神<程序员面试代码指南>"最大值减去最小值小于或等于num的子数组的数量"题目. 题目 给定数组 arr 和整数 num,共返回有多少个子数组满足如下情况: ...

  4. 二维数组求最小值_05-最大子矩形-最大值减去最小值小于或等于num的子数组数量...

    年轻即出发... 简书:https://www.jianshu.com/u/7110a2ba6f9e 知乎:https://www.zhihu.com/people/zqtao23/posts Git ...

  5. 作业三——求左部分中的最大值减去右部分最大值的绝对值,最大是多少...

    给定一个长度为N(N>1)的整型数组A,可以将A划分成左右两个部分,左部分A[0..K],右部分A[K+1..N-1],K可以取值的范围是[0,N-2].求这么多划分方案中,左部分中的最大值减去 ...

  6. 栈和队列---最大值减去最小值小于或等于num的子数组数量

    [题目] 给定数组arr和整数num,共返回有多少个子数组满足如下情况:子数组中的最大值减去最小值小于或等于num. 要求,时间复杂度O(N). [基本思路] 首先明确两点: 1.如果子数组arr[i ...

  7. 【面试题 - 最大值减去最小值小于或等于 num 的子数组数量】滑动窗口

    题干: 解题报告: 我们用两个指针(i,j)分别代表窗口的左边界和右边界,窗口也就是子数组: 用两个双端队列分别维护这个窗口的最大值和最小值: 当窗口扩大时,即j向右扩展时,窗口内的最大值只会越来越大 ...

  8. C语言学习之输出10个整数中的最大值及其下标、最小值及其下标

    1.试编程从键盘输入10个整数并保存到数组,输出10个整数中的最大值及其下标.最小值及其下标. #include <stdio.h> void main(){int a[10],i;int ...

  9. java 找序列最小值_【C++编程练习】任意给定 n 个有序整数,求这 n 个有序整数序列的最大值,中位数和最小值...

    题目来源 题目描述 老师给了你n个整数组成的测量数据,保证有序(可能为升序或降序),可能存在重复的数据.请统计出这组测量数据中的最大值.中位数以及最小值,并按照从大到小的顺序输出这三个数. 输入格式 ...

  10. 在二维数组中寻找最小鞍点1181(该行最大值,该列最小值)(2种思路)

    题目描述 找出一个2维数组矩阵的鞍点,即该位置上的元素在该行中最大,在该列中最小,可能不存在鞍点,如果存在多个,输出最小的那个! 输入要求 输入 n,m表示二维矩阵的行数和列数,然后根据行列数输入n* ...

最新文章

  1. 【Win32 API学习]打开可执行文件
  2. linux 模拟生成 CAN 设备
  3. R包corrplot绘图相关系数矩阵
  4. python爬虫图片实例-【图文详解】python爬虫实战——5分钟做个图片自动下载器...
  5. Twitter是如何做到每秒处理3000张图片的?
  6. SSD+HDD双硬盘+MSI主板win8.1+ubuntu17.04双系统安装总结
  7. toj 4604 搞笑版费马大定理
  8. 一位父亲对孩子的灭日教育(暴强)
  9. CCCC-GPLT L2-019. 悄悄关注 团体程序设计天梯赛
  10. C++ 信号处理 signal(SIGINT, signalHandler);
  11. 游戏公司2022秋招记录
  12. SQL经典面试50题 | 附答案
  13. 手撕《现代信号处理》——通俗易懂的现代信号处理章节详解集合
  14. insightface 的学习与使用
  15. 汽车车灯注塑件三维尺寸公差检测
  16. 2023年软考高项论文秘籍大讲堂|开篇
  17. python-模块使用方法
  18. python数据分析培训内容可以_Python数据分析师
  19. tensorflow框架精细讲解(一)
  20. python实现在线翻译

热门文章

  1. matlab函数grid,Matlab基本函数-grid、box函数
  2. word上下的横线怎么去掉_word中去掉页面上的横线 word页面横线怎么去掉
  3. 栈和队列的共同处和不同处
  4. Could Not find resource [logback.groovy] ; Cound Not find resource [logback-test.xml]
  5. 小说网站源码+采集器+App端
  6. 夜神设置android版本,使用夜神模拟器调试android app
  7. Zblog博客怎么实现微博登陆?
  8. ajax2 cors跨域,Koa2框架应用CORS完成跨域ajax要求
  9. 友达5寸工控液晶屏G050VTN01.1 小尺寸液晶屏
  10. Mysql数据库内对查询结果去重复指令【重点】