コードの出力はどうなりますか
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