c语言a<<=1与a<<1的区别是什么?

如题所述

c语言 a<<=1与a<<1的区别:

1、表示的含义不同

a<<=1表示左移运算后,对a进行赋值。

a<<1表示只对a进行左移运算。

2、运算的结果不同

a<<=1在运算后,a的值会变成a进行左移运算后的值。

a<<1在运算后,a的值不会改变。

扩展资料

<<、=运算符在C语言中的功能:

1、<<的功能

把“<<”左边的运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0。如a<<b,则将数据a格比特位向左移b位,即左移a位就是将数据扩大至原来的2的a次方倍。

2、=的功能

对对象进行赋值,如a=b,则a的值为b。在c语言中也常常将赋值运算符=与其他的运算符结合起来,表示按照优先级顺序处理对象后,再对对象进行赋值。

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜