黑马程序员技术交流社区

标题: 这个结果是8还是16,犹豫不决,谁看一看,给我一个理由,谢谢了 [打印本页]

作者: 惜爱上缘    时间: 2015-7-13 22:38
标题: 这个结果是8还是16,犹豫不决,谁看一看,给我一个理由,谢谢了
设 a = 3,则表达式 (--a )<<a的结果是( )
A. 16                       
B. 8
C. 24                       
D. 12

作者: mmppp    时间: 2015-7-13 23:47
这个应该就是8,吧。。。。相当于就是2<<2........

因为是--a,就先把原值做-1运算,在去做之后的事情,而a已经做了一次减法了,所以a已经变成了2,   2<<2,

就是10,向左移动两位,就是1000.。。。就是8.。这样解释可以吗
作者: 菜鸟学徒    时间: 2015-7-14 00:46
8,运算符的优先级问题
作者: 人造番茄    时间: 2015-7-14 07:05
8吧,先自增,后位移运算




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2