获取整数的最大值最小值
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,如需转载请自行联系原作者
获取整数的最大值最小值相关推荐
- 整数的最大值和最小值
本文翻译自:Maximum and Minimum values for ints I am looking for minimum and maximum values for integers i ...
- Java方法实现数组的遍历、获取数组的最大值和最小值
1. Java方法的练习:数组遍历 需求:设计一个方法用于数组遍历,要求遍历的结果是在一行上的.例如:[11, 22, 33, 44, 55] import java.util.Scanner;//需 ...
- c语言找最大值最小值
找最大值最小值位置 从键盘任意输入10个整数,计算并输出最大值和最小值及其它们在数组中的下标位置. 程序运行结果示例1: Input 10 numbers:1 2 3 4 5 6 7 8 9 10↙ ...
- Java输出最大值,最小值3种方法
文章目录 if语句 Scanner输入三个数 数组输入输出n个数 if语句 if语句,输入三个数,输出对应的最大值,最小值 public static void main(String[] args) ...
- Java最大值最小值问题(用户输入)
前言:做编程题遇到的问题,对思路有较好启示 目录 输入的值较少 输入的值较多 方法一(循环) 方法二(Arrays.sort排序)(值较少时也可以用) 输入的值较少 当输入的值较少时, ...
- js数字处理:保留几位小数,最大值,最小值
js数字处理:保留几位小数,最大值,最小值 function checkDigit(val) {// 调用案例 checkDigit({ number: " 1f发1,a.g5.1A62ag ...
- python求三个整数最大值_实例讲解Python中整数的最大值输出
实例讲解Python中整数的最大值输出 在Python中可以存储很大的值,如下面的Python示例程序: x = 1000000000000000000000000000000000000000000 ...
- js基础知识整理之 —— 求最大值 最小值 平均数的几种方法
一.最大值和最小值 1.通过数组的sort方法排序,然后取数组中最后一个,第一个: 2.假设法 假设数组第一项是最大值,然后通过循环获取数组中的每一项,让数组中的每一项和max进行比较,如果大于max ...
- 7-29 最大值最小值 (10 分)
键盘输入三个整数,要求输出其最大值和最小值. 输入格式: 键盘输入只有一行,即三个整数,每个整数之间一个空格. 输出格式: 用一行输出最大值和最小值,之间用一个空格隔开. 输入样例: 10 15 14 ...
- int的取值范围(最大值最小值)怎么得到
今天我们来给大家介绍一几个宏,来获取int的最大值及最小值 1, INT_MAX 这个宏定义是int型的最大值了,不用我们牢牢地记住2147483647了,极大地方便了我们的编程. 图里就显示出来的i ...
最新文章
- Linux下php连接sql server 2008
- mysql 存储过程与函数_12 MySQL存储过程与函数
- 先验概率、似然函数与后验概率
- Leetcode题库 15.三数之和_0(双指针 C实现)
- 斐波那契数的两种求法(迭代,递归)
- LiveVideoStackCon深圳-精选最新多媒体技术方案
- matlab修改图片位深度_如何利用matlab统一处理照片亮度对比度
- 前端工作、学习中常用工具推荐
- mybatis 二级缓存使用注意
- c语言构成循环结构的是,C语言循环结构选择题
- flutter 点击旋转动画_flutter RotationTransition实现旋转动画
- 基于PHP物流网站信息管理系统
- 数学专业英语--2.5(几何)
- Flex VideoPlayer组件 属性详解
- 为什么您没有得到最好的承包商,您将如何做(第2部分)
- java字符串同构_Java同构代码
- csgo机器人队友_csgo打人机去掉己方人机 | 手游网游页游攻略大全
- 惠州全日制计算机学校,惠州市所有中专学校一览表
- group by 取每组最新的一条
- Maximum Likelihood (MLE) Maximum a posteriori (MAP)的分別
热门文章
- linux下启动tomcat出现“This file is needed to run this program ”
- Handler处理机制
- Atitit.request http乱码的设计防止 检测与解决最近实践p825 attilax总结.doc
- bzoj 2623 所罗门的咒语
- 回不去原来是没有 实现这个 代理方法,
- lamp+cacti+ntop+thold+nagios+syslog
- Android 中Animation简单例子
- c语言实验赵欣版答案,赵欣-计算机科学与技术学院
- 文件夹里没有index.html,gatsby-cli建立后没有index.html文件吗?
- android plot,androidplot行不显示