これは初心者の質問です。
以下は、私が使用していたC++コードです
int main() {
int x=5, y=5;
cout<<x--;
cout<<",";
cout<<--x;
cout<<",";
cout<<y--<<","<<--y;
return 0;
}
Turbo C++ 3.0 で実行すると、コードによって次のような出力が表示されます。
5,3,4,4
Windows で Code::Blocks を使用してコンパイルすると (GCC/G++ で MinGW を使用)、次の出力が表示されます。
5,3,4,3
以前、特定の問題に対してコンパイラによって動作が異なる場合があると聞いたことがありますが、この結果が表示される理由がわかりません。論理的には、私が思うに、出力は次のようになるはずです。
5,3,5,3
そのような出力の論理的な理由を教えてください。
ありがとうございました!