位运算符&与&&的区别和位移运算符
程序员文章站
2022-03-10 08:43:42
...
一 ,位运算
1,按位与& ,例如:
(1==2)&(2==2),即使”&”前面的比较值是false,但还是会继续”&”后面的(2==2),比较值为true,最终返回值是false
2,短路与&&,例如:
同样的(1==2)&&(2==2),”&&”前面的比较值是false,但不会继续”&&”后面的(2==2)比较,最终返回值是false
二 ,位移运算符<<,>>,>>
1,左移<<,如1010<<2
就是将一个二进制位的操作数1010按指定的移动位数2向左移动,移出位被丢弃,右边的空位一律补0,得到1000.
2,带符号右移>>,如1010 0010>>2
就是将一个二进制位的操作数1010 0010按指定的移动位数2向右移动,移出位被丢弃,左边的空位一律补符号位,得到1110 1000
3,无符号右移>>>,如1010 0010>>>2
就是将一个二进制位的操作数1010 0010按指定的移动位数2向右移动,移出位被丢弃,左边的空位一律补0,得到0010 1000
上一篇: linux >>和>的区别