4 回答
拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
左移运算符(<<)
将一个运算对象的各二进制位全部左移若干位(左边的二进制位丢弃,右边补0)。
例:a = a << 2 将a的二进制位左移2位,右补0,
左移1位后a = a * 2;
若左移时舍弃的高位不包含1,则每左移一位,相当于该数乘以2。
右移运算符(>>)
将一个数的各二进制位全部右移若干位,正数左补0,负数左补1,右边丢弃。
操作数每右移一位,相当于该数除以2。
例如:a = a >> 2 将a的二进制位右移2位,
左补0 or 补1 得看被移数是正还是负。
潇湘沐
TA贡献1816条经验 获得超6个赞
herenzi
2017-12-01
展开全部
意思是向左移位
比如char a = #0000 0001;
那么 a << 1 == #0000 0010;
可以看到1向左移动了一位,并且在原本的1位上添加了一个0
那么这个时候pinrtf("%d",a); 结果输出2
同理char c = #0010 1100; //c ==44
c << 2 == #1011 0000;
printf("%d",c); //输出 174
- 4 回答
- 0 关注
- 17001 浏览
添加回答
举报
0/150
提交
取消