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. Linux下php连接sql server 2008
  2. mysql 存储过程与函数_12 MySQL存储过程与函数
  3. 先验概率、似然函数与后验概率
  4. Leetcode题库 15.三数之和_0(双指针 C实现)
  5. 斐波那契数的两种求法(迭代,递归)
  6. LiveVideoStackCon深圳-精选最新多媒体技术方案
  7. matlab修改图片位深度_如何利用matlab统一处理照片亮度对比度
  8. 前端工作、学习中常用工具推荐
  9. mybatis 二级缓存使用注意
  10. c语言构成循环结构的是,C语言循环结构选择题
  11. flutter 点击旋转动画_flutter RotationTransition实现旋转动画
  12. 基于PHP物流网站信息管理系统
  13. 数学专业英语--2.5(几何)
  14. Flex VideoPlayer组件 属性详解
  15. 为什么您没有得到最好的承包商,您将如何做(第2部分)
  16. java字符串同构_Java同构代码
  17. csgo机器人队友_csgo打人机去掉己方人机 | 手游网游页游攻略大全
  18. 惠州全日制计算机学校,惠州市所有中专学校一览表
  19. group by 取每组最新的一条
  20. Maximum Likelihood (MLE) Maximum a posteriori (MAP)的分別

热门文章

  1. linux下启动tomcat出现“This file is needed to run this program ”
  2. Handler处理机制
  3. Atitit.request http乱码的设计防止 检测与解决最近实践p825 attilax总结.doc
  4. bzoj 2623 所罗门的咒语
  5. 回不去原来是没有 实现这个 代理方法,
  6. lamp+cacti+ntop+thold+nagios+syslog
  7. Android 中Animation简单例子
  8. c语言实验赵欣版答案,赵欣-计算机科学与技术学院
  9. 文件夹里没有index.html,gatsby-cli建立后没有index.html文件吗?
  10. android plot,androidplot行不显示