以下表达式的值是多少? I = 1; I =(I <&lt; = 1%2)(a)2(b)1(c)0(d)语法错误

时间:2013-06-08 03:50:31

标签: c

以下表达式的值是什么?

      I = 1;
      I = (I<<= 1 % 2)

从以下选项中选择:

(a) 2     
(b) 1      
(c) 0      
(d) syntax error

1 个答案:

答案 0 :(得分:6)

在第一个表达式中,值显然为1

在第二个表达式中,您有未定义的行为,因为I被修改了两次而没有介入sequence point