c/c++常需要获得最大值,最小值,通常这两个数与平台和操作系统有关,因此可移植的办法就是推荐使用库函数提供的常量定义

1. 利用语言自定义

类似的常量定义在limits.h和float.h头文件中。在头文件中,整数的最值通常是这样的名字:INT_MAX, INT_MIN,直接使用即可。

2. 自定义变量

int MAX_INT = ((unsigned)(-1))>>1;
int MIN_INT = ~MAX_INT;

解释

int占4个字节。-1是有符号数,默认用补码表示,二进制表示为32个1,如果强制解释为无符号数,那么

(unsigned)(-1)

=(11111111 11111111 11111111 11111111)2(无符号数)

=2^0+2^1+2^2+....+2^31

=2^32-1

=4294967295

那么右移一位

(unsigned)(-1)>>1

=(01111111 11111111 11111111 11111111)2(无符号数)

=2^31-1

=2147483647

程序例证

#include <iostream>
using namespace std;
int main()
{int max_int = (unsigned)(-1) >> 1;int min_int = ~max_int;cout << (signed)(-1) << endl;cout << (unsigned)(-1) << endl;cout << max_int << "\t" << min_int << endl;
}

结果

注意

~(unsigned(-1) >> 1) = 2147483648(无符号的)

~max_int = 2147483648(有符号的)

本文转自jihite博客园博客,原文链接:http://www.cnblogs.com/kaituorensheng/p/3530000.html,如需转载请自行联系原作者

获取整数的最大值最小值相关推荐

  1. 整数的最大值和最小值

    本文翻译自:Maximum and Minimum values for ints I am looking for minimum and maximum values for integers i ...

  2. Java方法实现数组的遍历、获取数组的最大值和最小值

    1. Java方法的练习:数组遍历 需求:设计一个方法用于数组遍历,要求遍历的结果是在一行上的.例如:[11, 22, 33, 44, 55] import java.util.Scanner;//需 ...

  3. c语言找最大值最小值

    找最大值最小值位置 从键盘任意输入10个整数,计算并输出最大值和最小值及其它们在数组中的下标位置. 程序运行结果示例1: Input 10 numbers:1 2 3 4 5 6 7 8 9 10↙ ...

  4. Java输出最大值,最小值3种方法

    文章目录 if语句 Scanner输入三个数 数组输入输出n个数 if语句 if语句,输入三个数,输出对应的最大值,最小值 public static void main(String[] args) ...

  5. Java最大值最小值问题(用户输入)

    前言:做编程题遇到的问题,对思路有较好启示 目录 输入的值较少 输入的值较多 方法一(循环) 方法二(Arrays.sort排序)(值较少时也可以用) 输入的值较少         当输入的值较少时, ...

  6. js数字处理:保留几位小数,最大值,最小值

    js数字处理:保留几位小数,最大值,最小值 function checkDigit(val) {// 调用案例 checkDigit({ number: " 1f发1,a.g5.1A62ag ...

  7. python求三个整数最大值_实例讲解Python中整数的最大值输出

    实例讲解Python中整数的最大值输出 在Python中可以存储很大的值,如下面的Python示例程序: x = 1000000000000000000000000000000000000000000 ...

  8. js基础知识整理之 —— 求最大值 最小值 平均数的几种方法

    一.最大值和最小值 1.通过数组的sort方法排序,然后取数组中最后一个,第一个: 2.假设法 假设数组第一项是最大值,然后通过循环获取数组中的每一项,让数组中的每一项和max进行比较,如果大于max ...

  9. 7-29 最大值最小值 (10 分)

    键盘输入三个整数,要求输出其最大值和最小值. 输入格式: 键盘输入只有一行,即三个整数,每个整数之间一个空格. 输出格式: 用一行输出最大值和最小值,之间用一个空格隔开. 输入样例: 10 15 14 ...

  10. int的取值范围(最大值最小值)怎么得到

    今天我们来给大家介绍一几个宏,来获取int的最大值及最小值 1, INT_MAX 这个宏定义是int型的最大值了,不用我们牢牢地记住2147483647了,极大地方便了我们的编程. 图里就显示出来的i ...

最新文章

  1. bash中通过设置PS1变量改变提示符颜色
  2. JAVA获取json中的值
  3. java 提高性能的 容器库_容器隔离性带来的问题--容器化Java应用比虚机启动速度慢...
  4. Android UI布局—— 仿QQ登录界面
  5. java多线程模拟loadrunner进行压测
  6. 计算机网络---HTTP状态码
  7. java socket 异步回调函数_浅谈socket同步和异步、阻塞和非阻塞、I/O模型
  8. Spark 机器学习 —— 从决策树到随机森林
  9. 老老实实学WCF] 第五篇 再探通信--ClientBase
  10. vcpkg编译库位数总结
  11. 适配器模式(Adapter Pattern)
  12. C# 编写小巧快速的 Windows 动态桌面软件
  13. html5标签含义元素周期表
  14. IR2104全桥驱动的自举问题
  15. python 爬虫 代理池
  16. C++实现OPT最佳页面替换算法,结果简明扼要
  17. 国泰君安证券 神策数据首发《证券行业数字化财富管理 3A3R 指标体系白皮书》...
  18. 英特尔第十代处理器为什么不支持win7_Intel 第十代CPU(部分U)装WIN7
  19. 动感校园行17951长途ip电话卡
  20. (四十五:2021.08.05)《利用深度学习对ecg信号进行分割》

热门文章

  1. AFURLRequestSerialization
  2. 黑马程序员————java中面向对象的三大特性
  3. C++关键字(static-register-atuo-extern-volatile-const)
  4. 从文本中读取 并截取需要的字符串
  5. CSS颜色代码(转载)
  6. loadrunner 字符集与检查点的探讨
  7. Android 四大组件学习之Activity六
  8. 一篇极好的Git 总结
  9. 深入解读Linux进程调度系列(1)——调度的初始化
  10. Linux系统下init进程的前世今生