c语言中符号<<是什么意思

如题所述

左移运算符(<<)

将一个运算对象的各二进制位全部左移若干位(左边的二进制位丢弃,右边补0)。

例:a = a << 2 将a的二进制位左移2位,右补0,

左移1位后a = a * 2;

若左移时舍弃的高位不包含1,则每左移一位,相当于该数乘以2。
右移运算符(>>)

将一个数的各二进制位全部右移若干位,正数左补0,负数左补1,右边丢弃。

操作数每右移一位,相当于该数除以2。

例如:a = a >> 2 将a的二进制位右移2位,

左补0 or 补1 得看被移数是正还是负。
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-05-19
数据的二进制左移,比如:int a=1; a<<=1;
存放在变量a中的数据左移1位(将等于2):1B<<1=10B
类似的还有右移>>
第2个回答  2020-01-13
相似回答