代码的输出将是什么
int a=3,b=4;
++a*=++b;
cout<<a<<endl;
编译器显示输出a=20
。 这里是如何使用的?precedence
operator associativity
我的理解是:
首先b
在左边++a*=++b;
是递增我们它的unary
运算符然后是轮到*=
所以表达式变成++a = a * ++b;
了现在所以它变成了a=3
然后被分配和递增。最后得到但编译器给出b=5
15
15
a
16
20
代码的输出将是什么
int a=3,b=4;
++a*=++b;
cout<<a<<endl;
编译器显示输出a=20
。 这里是如何使用的?precedence
operator associativity
首先b
在左边++a*=++b;
是递增我们它的unary
运算符然后是轮到*=
所以表达式变成++a = a * ++b;
了现在所以它变成了a=3
然后被分配和递增。最后得到但编译器给出b=5
15
15
a
16
20