在C语言中 <<与<<=的区别

比如x<<1与x<<=1有啥区别详细解说... 比如x<<1与x<<=1有啥区别 详细解说 展开
 我来答
小星星教育知识分享
高粉答主

2019-11-28 · 用教师的智慧点燃学生的智慧火花
小星星教育知识分享
采纳数:203 获赞数:67113

向TA提问 私信TA
展开全部

在C语言中 <<与<<=只有一个区别就是作用不同。

C语言中的>>和<<分别是左移运算符和右移运算符,用于整数在二进制形式的移位运算;

关系运算符用于比较运算。包括大于(>)、小于(<)、等于(==)、大于等于(>=);小于等于(<=)和不等于(!=)六种。

在C语言中x<<=1等于x=x<<1,是把x左移1位以后值保存回x里,x发生变化了。

扩展资料

结合方向右结合(自右至左)单目运算符

!逻辑非运算符

~按位取反运算符

++自增运算符

--自减运算符

-负号运算符

(类型)类型转换运算符

*指针运算符

&地址与运算符

sizeof长度运算符

大宝妈谈教育
高粉答主

2020-03-28 · 关注我不会让你失望
知道小有建树答主
回答量:3306
采纳率:100%
帮助的人:35万
展开全部

在C语言中 <<与<<=唯一的一个区别就是作用不同。

C语言中的>>和<<分别是左移运算符和右移运算符,用于整数在二进制形式的移位运算;

关系运算符用于比较运算。包括大于(>)、小于(<)、等于(==)、大于等于(>=);小于等于(<=)和不等于(!=)六种。

在C语言中x<<=1等于x=x<<1,是把x左移1位以后值保存回x里,x发生变化了。

扩展资料:

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

1、<<的功能

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

2、=的功能

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

结合方向右结合(自右至左)单目运算符

!逻辑非运算符

~按位取反运算符

++自增运算符

--自减运算符

-负号运算符

(类型)类型转换运算符

*指针运算符

&地址与运算符

sizeof长度运算符

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2017-09-12
展开全部
x << 1 得到的结果是左移1位后的值,它被保存在一个临时变量中,与x无关,即x的值不变。
x <<= 1 相当于 x = x << 1,是将x左移1位以后的值保存回x中,x发生了变化。
好比说:
x + 10 得到比x大10的值——在临时变量中,但x不变。
x += 10 则是x增大10,x变了。
追问
suo   ga   懂了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
TLX741203
2014-08-09
知道答主
回答量:20
采纳率:0%
帮助的人:6.9万
展开全部
不一样,看看逻辑运算和赋值 优先级。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2020-11-13
展开全部
直接用,别超额度就行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式