-1

以下は、c のコード行です。

     i++=i++;

出力: エラー左辺値が必要です。
では、このエラーは何を示しているのでしょうか?

4

3 に答える 3

1

の結果はi++左辺値ではなく、標準では代入演算子の左オペランドが左辺値である必要があります。

許可されていたとしても、2 つのシーケンス ポイント間で同じオブジェクトを 2 回変更しようとしているため、プログラムは未定義の動作を呼び出します。

于 2012-08-05T11:48:41.970 に答える
0

i++割り当て不可であることを示します。に割り当てようとしているようなものです1(値を保存するi++と生成されます)。i1

もちろん、それは意味がありません。これは、最初に紙を赤く塗り、次に青く塗りたいときに、「赤」の色を変更しようとすることと比較できます。

于 2012-08-05T11:49:56.237 に答える
0

左の値が必要だと言っています。左=右の割り当てを行っています。i++ は右なので左にはなりません。簡潔さを取り除くと、コード行は次のようになります

i + 1 = i + 1、これは代入ではなく方程式です。

その上で、あなたは実際に何をしようとしていますか?

于 2012-08-05T11:53:03.510 に答える