c语言a<<2的意思?若a=2,b=a<<2,那么输出b为多少?

如题所述

<<是左移号,a为2的话,其转为二进制数为00000010, a<<2,a左移两位,右端补零,变为00001000,
即8,赋给b,a本身不变.
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-08-15
8,表示2往左移2位。
第2个回答  2012-08-15
b的输出为8追问

谢谢,不过没解释原因

追答

对不起...记得下一次加一句:解释下原因....我看到这个,就直接回答了,相都没想....<<操作符的作用就这个,除非就是重载了cout用,所以看到你题目问b为多少,就直接回答8了....感觉很简单....

追问

初学者。呵呵。

追答

不是初不初学者,我的意思是你下次发问题发全面了,就是附上一句:请说明理由(假如你想知道理由的话)
要不然你看看,大家同样是按照你的问题来回答的,为啥就给他分数,问题我回答了,你有不懂得可以继续追问,比如就好比你说的,你忘记<<的用法,那么你就追问啊
你这样想一个意思,给分又给另外一个意思...完全不公平啊

第3个回答  2012-08-15
8

c语言a<<2的意思?若a=2,b=a<<2,那么输出b为多少?
<<是左移号,a为2的话,其转为二进制数为00000010, a<<2,a左移两位,右端补零,变为00001000,即8,赋给b,a本身不变.

c语言中a<<2是什么意思?
在C语言中,b=a<<2代表将a移位后的值赋值给b。例如:100的二进制表示为1100100,100左移2位后,后面加2个零1100100<<2 =110010000 =400,可以看出,a<<b的值实际上就是a乘以2的b次方,因为在二进制数后面添加一个0就相当该数乘以2,2个零即2的2次方等于4。

c语言中,符号a=2,b=a<<2怎么计算
符号是什么意思?要是负号就有问题了,负号运算符后跟表达式,不是变量。姑且认为此运算式是a=2,b=a<<2吧!此式是逗号表达式,表达式1,表达式2.顺序计算,此式的值为表达式2的值。a左移两位就相当于a乘(2的2次方),故a=8。赋值给b=8,表达式的值为8....

c语言中b= a<<2是什么意思?
在C语言中,b=a<<2代表将a移位后的值赋值给b 例如:100的二进制表示为1100100,100左移2位后,后面加2个零1100100<<2 =110010000 =400,可以看出,a<<b的值实际上就是a乘以2的b次方,因为在二进制数后面添加一个0就相当该数乘以2,2个零即2的2次方等于4。通常认为a<<1比a*2更快,因为...

C语言<<=是什么意思
位运算符与赋值运算符可以组成复合赋值运算符;例如 a << =2相当于a = a << 2 1、左移运算符(<<)左移运算符是用来将一个数的各二进制位左移若干位,移动的位数由右操作数指定(右操作数必须是非负值),其右边空出的位用0填补,高位左移溢出则舍弃该高位。例如:将a的二进制数左移2位...

c语言 <<=什么意思
这是复合运算符和a-=b,a+=b,a*=b是一样的 a<<=2就是a=a<<2 将a的二进制数左移2位右补0,若a=15,二进制是00001111,左移2位的00111100

c语言问题,表达式t=(a<<2)|b是什么意思?
就是把a左移两位,然后和b做位与运算,最后把结果赋值给t

c语言中t=(a<<2)|b表示什么意思
将a左移两位的结果与b进行按位或运算,再将运算结果赋给t。

a=b<<2是什么意思
将a移位后的值赋值给b。根据查询你问我答网站显示:在C语言中,b=aC语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。

C语言求解释 a=5 b=1 (a<<2)|b是多少 怎么算的 谢谢
先把a换成二进制为101,符号<<为左移运算符,对a左移两位的结果为100,|为按位或运算符,即a左移两位后的二进制数与b的二进制数按位或,b的二进制为001,所以(a<<2)|b为101即为5.

相似回答