>> 和 >>> 的区别只有一个, 就是它们的作用不同 :
>> 表示 右移
如果该数为正数, 则最高位补0, 若为负数, 则最高位补1
如:int i=15;
i>>2 => 0000 1111(15) >> 2 => 0000 0011 => 结果为3,移出的部分将被抛弃。
0001 1010(26)>> 3 => 0000 0011(3)
>>> 表示
无符号
右移
无符号右移, 也叫逻辑右移, 若该数为正数, 则
高位补 0
, 若该数为负数, 则右移后
高位同样补 0
。
按二进制形式把所有的数字
向右移动对应的位数, 低位移出(舍弃), 高位的空位补零
。
对于正数来说和带符号右移相同
, 对于
负数来说不同
. 其他结构和>>相似
版权声明:本文为qq_42319677原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。