a[i]<<=2; C语言中,这语句什么意思
3个回答
推荐于2018-04-05
展开全部
“<<” 代表左移运算符.
a[i]<<=2 即: 将a[i] 对应的二进制向左移两位.
左移运算通过可以用来做2的多次方乘法, 左移1位等于乘以2的一次方
因此在不溢出的情况下: a[i]<<=2; 其实等价于: a[i]乘以2的2次方
即: a[i]<<=2 等价于 a[i]=a[i]*2*2=a[i]*4
a[i]<<=2 即: 将a[i] 对应的二进制向左移两位.
左移运算通过可以用来做2的多次方乘法, 左移1位等于乘以2的一次方
因此在不溢出的情况下: a[i]<<=2; 其实等价于: a[i]乘以2的2次方
即: a[i]<<=2 等价于 a[i]=a[i]*2*2=a[i]*4
展开全部
将a[i](char 型数据)的值按位左移两位(二进制)右端补0,若a[i]为十进制21,则其二进制为0010 0001b,左移两位就是00 1000 0100,因为a[i]为8位,所以最左边两位舍去,变为1000 0100(十进制为132),a[i]也可以是int,long型,但不能是float,double
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个是移位运算吧。将a[i]转化为二进制,向左移两位。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询