当前位置:网站首页>为什么最大值加一等于最小值
为什么最大值加一等于最小值
2022-08-01 12:44:00 【51CTO】
在程序中有时候不小心将最大数值加1,我们会得到一个负数,这个负数就是这种数据类型的最小值。
下面看一个示例:
运行结果:
从结果可以看出:最大的整数加一确实变成了最小的整数,从它们的二进制形式更可以明显的看出。计算机内部进行计算的时候是以二进制的补码形式进行加法运算的。很显然,最大的数01111111111111111111111111111111+1=10000000000000000000000000000000,这里的10000000000000000000000000000000是-2147483648的补码形式。
如果在运算过程中我们强者将数据类型转换成存储容量更大的数据类型,则不会出现这一变成负数这样的结果。2147483647L + 1是long型的2147483647+1这样就不会溢出变成负数。
此外,还需要注意的是在Java和C#中int是32位,long是64位,我们这样转换没有问题。但是在C++语言中short、int和long的位数和操作系统有关。我们只能说short<=int<=long,当然两个等号不会同时成立。所以有时候我们会看到long long这样的写法,long long是比long类型容量更大的整形。在VC++中long long也写作_int64。
边栏推荐
- CloudCompare&PCL ICP配准(点到面)
- The use of Ts - Map type
- [Unity3D Plugin] AVPro Video Plugin Share "Video Player Plugin"
- ECCV22|只能11%的参数就能优于Swin,微软提出快速预训练蒸馏方法TinyViT
- 深入理解 Istio —— 云原生服务网格进阶实战
- 华盛顿大学、Allen AI 等联合 | RealTime QA: What's the Answer Right Now?(实时 QA:现在的答案是什么?)
- Alibaba Cloud Official Redis Development Specification
- How to get the address of WeChat video account (link address of WeChat public account)
- bat倒计时代码
- How to Integrate Your Service Registry with Istio?
猜你喜欢
那些利用假期学习的职场人,后来都怎么样了?
阿里云官方 Redis 开发规范
收藏|机械工程师面试常问问题
Process sibling data into tree data
达梦更换正式授权dm.key
Audio and Video Technology Development Weekly | 256
Find objects with the same property value Cumulative number Summarize
小程序插件如何帮助开发者受益?
华盛顿大学、Allen AI 等联合 | RealTime QA: What's the Answer Right Now?(实时 QA:现在的答案是什么?)
安全又省钱,“15岁”老小区用上管道燃气
随机推荐
win10系统重装,无法登录进行同步的情况下chrome数据恢复
如何利用DevExpress控件绘制流程图?看完这篇文章就懂了!
Do wildcard SSL certificates not support multiple domains?
Alibaba Cloud Official Redis Development Specification
Pytest电商项目实战(下)
【社区明星评选】第24期 8月更文计划 | 笔耕不辍,拒绝躺平!更多原创激励大礼包,还有华为WATCH FIT手表!
[CLion] CLion always prompts "This file does not belong to any project target xxx" solution
2022 Go生态圈 rpc 框架 Benchmark
Js手写函数之new的模拟实现
阿里云官方 Redis 开发规范
如何成功通过 CKA 考试?
数字证书原理
How to use DevExpress controls to draw flowcharts?After reading this article, you will understand!
【StoneDB Class】入门第二课:StoneDB 整体架构解析
Aeraki Mesh 正式成为 CNCF 沙箱项目
Beyond Compare 4 试用期到期
Tencent Cloud Native: Service Mesh Practice of Areaki Mesh in the 2022 Winter Olympics Video Live Application
如何获取微信视频号的地址(微信公众号的链接地址)
【公开课预告】:超分辨率技术在视频画质增强领域的研究与应用
库函数的模拟实现(strlen)(strcpy)(strcat)(strcmp)(strstr)(memcpy)(memmove)(C语言)(VS)