[アドバイスを求める] PHP でのこれら 2 つの加算演算の結果が常に 3 になるのはなぜですか? $a = 1; $c = $a+$a++; var_dump($c); // result:3 $a = 1; $c = $a+$a+$a++; var_dump($c); //result:3ログイン後にコピー 私の理解: 最初の結果は 2、2 番目の結果は 3 になるはずです プリントアウト: int 3 int 3ログイン後にコピー 共有先: -----解決策--------------------------------php の構文の指示に従ってください。その理解は正しいです 実際の実行結果はこんな感じではないので、phpのバグだと考えて良いでしょう。 しかし、これは C 言語の場合であるため、このバグは意図的なものである可能性もあります -----解決策-------- -この問題について議論する投稿がこれほどたくさん見つかるのはなぜですか。 ウィキペディア: コンピューター プログラミングでは、未定義の動作とは、予測できない動作をするコンピューター コードを指します。これは一部のプログラミング言語、特に C の機能です。 [1] これらの言語では、標準を簡素化し、実装にある程度の柔軟性を与えるために、標準では特定の操作の結果が未定義であることを明確に規定しています。これは、プログラマが何が起こるかを予測できないことを意味します。