博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
计算机内加减法的溢出处理
阅读量:2207 次
发布时间:2019-05-04

本文共 369 字,大约阅读时间需要 1 分钟。

往正数方向溢出了,则减去2^n

往负数方向或0方向溢出了,则加上2^n
n为数据类型的位数
char——1字节,8位 2^n=256
举例子:

#include 
using namespace std;int main(){
char a=127; printf("%d\n",a); a++; printf("%d\n",a); return 0;}

运行结果:

127
-128
char是带符号数据类型
表示范围则为-128~127
a=127已经是临界状态,再加1会出现溢出,往正数方向,所以最终结果得再减去2^8(256)
即(127+1)- 256=-128

负数同理,往负数方向溢出了就再加上2^n

无符号类型则是以0为界

如 unsigned char 0~255

转载地址:http://nniyb.baihongyu.com/

你可能感兴趣的文章
hibernate 时间段查询
查看>>
java操作cookie 实现两周内自动登录
查看>>
Tomcat 7优化前及优化后的性能对比
查看>>
Java Guava中的函数式编程讲解
查看>>
Eclipse Memory Analyzer 使用技巧
查看>>
tomcat连接超时
查看>>
谈谈编程思想
查看>>
iOS MapKit导航及地理转码辅助类
查看>>
检测iOS的网络可用性并打开网络设置
查看>>
简单封装FMDB操作sqlite的模板
查看>>
iOS开发中Instruments的用法
查看>>
强引用 软引用 弱引用 虚引用
查看>>
数据类型 java转换
查看>>
"NetworkError: 400 Bad Request - http://172.16.47.117:8088/rhip/**/####t/approval?date=976
查看>>
mybatis 根据 数据库表 自动生成 实体
查看>>
win10将IE11兼容ie10
查看>>
checkbox设置字体颜色
查看>>
第一篇 HelloWorld.java重新学起
查看>>
ORACLE表空间扩张
查看>>
orcal 循环执行sql
查看>>