赞
踩
1.除了%操作符之外,其他的几个操作符可以作用与整数和浮点数,如:5%2.0//error.
2.对于操作符,如果两个操作数都为整数,执行整数除法而只要有浮点数执行的就是浮点数除法。
3.%操作符的两个操作数必须为整数。
int num = 10;
//00000000000000000000000000001010//num在内存中的二进制
num<<1
//00000000000000000000000000010100
右移操作符有两种移动:
(1).算术右移,移动的是补码,右边丢弃,左边以和符号位一样的数字进行补位:0为正,1为负。
(2).逻辑右移,右边丢弃,左边补0。
如果为正数,代码演示如下:
- #include <stdio.h>
- int main()
- {
- int a = 16;//16放在a里,a是整型,4个字节,32个比特位
- int b=a>>1;//将a的值右移赋值给b,00000000000000000000000000010000
- //右移一个把0丢弃,左边补0
- printf("%d\n",b);
- return 0;
- }
运行结果为:8
如果为负数:例如:(代码如下:)
- #include <stdio.h>
- int main()
- {
- int a = -1
- //我们假设,a是-1。原码是:10000000000000000000000000000001
- //对于正数,反码与其原码相同;对于负数,反码是在其原码的基础上,符号位保持不变,其他位按位取反,即把0变为1,1变为0。则反码是:11111111111111111111111111111110
- //补码是:对于正数,补码与其反码相同;对于正数ÿ
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。