关于无符号与有符号的相关运算
2013-05-23 00:10
351 查看
1)比较大小
2)移位
1)比较大小:不能直接比较大小,
分别定义一个signed int型数据和unsigned int型数据,然后进行大小比较:
unsigned int a=10;
signed int b=-100;
a>b?还是b>a?实验证明b>a,也就是说-100>10,为什么会出现这样的结果呢?
这是因为在C语言操作中,如果遇到无符号数与有符号数之间的操作,编译器会自动转化为无符号数来进行处理,这样比较下去当然b>a了。
当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型 ;
2)有符号位的移位:
有符号的会出现符号位一起移动的现象
2)移位
1)比较大小:不能直接比较大小,
分别定义一个signed int型数据和unsigned int型数据,然后进行大小比较:
unsigned int a=10;
signed int b=-100;
a>b?还是b>a?实验证明b>a,也就是说-100>10,为什么会出现这样的结果呢?
这是因为在C语言操作中,如果遇到无符号数与有符号数之间的操作,编译器会自动转化为无符号数来进行处理,这样比较下去当然b>a了。
当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型 ;
2)有符号位的移位:
有符号的会出现符号位一起移动的现象
相关文章推荐
- Shell运算符号与变量相关操作基础
- Pharmaceutical的同学们都看过来,关于补码运算的复习相关内容
- Js关于负数的右移与无符号右移运算
- Arcengine中关于符号相关类和接口的说明
- 关于符号运算结果过长无法屏幕打印的问题
- [中英文对照]关于标点符号和运算符号的英语解释
- 关于Scanner类的用法----用Scanner接收两个数和一个符号完成相应运算
- 关于负数的右移>>与无符号右移>>>运算小结
- [C++]指针运算中关于*和&符号的运算实验
- 关于Linux驱动文件的加载以及相关符号的地址说明
- 关于java中有符号数转换成无符号数的相关问题
- 关于负数的右移与无符号右移运算小结
- 关于Matlab中符号运算的因式分解、展开与合并
- 关于MATLAB入门的简单记录11 符号运算
- 关于有符号和无符号的移位运算
- 关于负数的右移与无符号右移运算小结
- Android环境下关于kconfig,.config的解读及meneconfig 相关符号说明[M],{*},< >,-*-
- 关于自增++a,和a++的相关运算,早年的有意思的笔记
- 关于java中位运算的左移、右移、无符号右移
- 关于C语言中无符号与有符号数之间运算问题