c语言中右移’是什么意思

Python010

c语言中右移’是什么意思,第1张

c语言中右移“>>”意思是将数的对应的二进制右移,移了以后空出的补零,比如a等于129的二进制是10000001,a>>2,则a等于00100000,即a等于32,相当与129除以4等于32。右移一位相当于a除以2。左移即“<<”,将数的对应的二进制左移,相当于将原来的数乘以2,比如a等于5,的二进制是00000101,a<<2,则a等于00010100(右边空出的补零)。

>>是2进制右移,相反的还有<<是2进制左移。

举例如下,如果一个变量

int

x=5

则x的2进制表示为:

0000000000000101

执行x>>1代表x右移一位,就是上面这一串整体右移,末位淘汰,高位补0

于是x变成了

0000000000000010

也就是x变成了2

<<左移相反,高位淘汰,末位补0

你的那种x[i][j]+=>4是不行的,没有这种运算符。