有符号数与无符号数的上溢与下溢问题
来源:互联网 发布:威纶触摸屏软件下载 编辑:程序博客网 时间:2024/05/01 01:14
有符号数与无符号数的上溢与下溢问题 以8位为例:
#include<stdio.h>int main(){//8位有符号的最大数char a = 127;printf("a = %d\n",a);a++;printf("a = %d\n",a);printf("************\n");//8位有符号的最小数char b = -128;printf("b = %d\n",b);b--;printf("b = %d\n",b);printf("************\n");//8位无符号数的最大数unsigned char c = 255;printf("c = %u\n",c);c++;printf("c = %u\n",c);printf("************\n");//8位无符号数的最小数unsigned char d = 0;printf("d = %u\n",d);d--;printf("d = %u\n",d);printf("************\n");unsigned char i = 255;i+=3;//应该打印 出2printf("i = %d\n",i);printf("************\n");char j = 127;j+=3;//应该打印出-126printf("j = %d\n",j);return 0;}
仔细来看,溢出会造成一个范围内的循环。输出结果如下:
a = 127a = -128************b = -128b = 127************c = 255c = 0************d = 0d = 255************i = 2************j = -126
- 有符号数与无符号数的上溢与下溢问题
- 无符号数与有符号数
- 有符号数与无符号数
- 有符号数与无符号数
- 有符号数与无符号数
- 有符号数与无符号数之间运算问题
- 有符号数与无符号数运算问题
- 有符号数与无符号数之间运算问题
- 有符号数与无符号数之间运算问题
- 有符号数与无符号数之间运算问题
- 有符号数与无符号数之间运算问题
- 有符号数与无符号数之间运算问题
- 有符号数与无符号数之间运算问题
- 无符号数与有符号数的操作
- 无符号数与有符号数的操作
- 无符号数与有符号数转换的原理
- 有符号数与无符号数的四则运算
- 有符号数与无符号数的运算
- 如何正确删除归档日志
- POJ:1251 Jungle Roads
- 一组老照片的解读
- Java中对象序列化的作用是什么
- The type SmsMessage is deprecated
- 有符号数与无符号数的上溢与下溢问题
- 解决mac os下mcss命令报错:env: node\r: No such file or directory
- OpenCV C++ 打开笔记本摄像头出现错误
- 斯坦福大学公开课《编程方法学》之笔记一
- 慢慢爬的蜗牛,新的起点
- SSIS_控制流(Web 服务任务)
- 公式编辑器
- 汇编语言中如何在屏幕显示字符
- 祝贺一下,今天注册了博客。