タグ付けされた質問 「lvalue-to-rvalue」

3
標準Cでは `(i)= 1`は違法ですか?
私はこの標準に従っているCコンパイラを書いており、次のようなステートメントを解析した場合: int i; (i) = 1; 私のコンパイラ(i)は、それが右辺値であり、割り当て可能であってはならないことを指摘するエラーを報告します。 コードとルールを確認したところ、次のことがわかりました:代入式のセマンティクス: 代入演算子は、左オペランドとして変更可能な左辺値を持つものとします。 割り当て式は、割り当て後に左のオペランドの値を持っていますが、左辺値ではありません。 私の場合は、2つの代入式があります (i) = 1し、i括弧インチ したがって、これは(i)右辺値である必要があります。 だから私の質問です:(i) = 1このC標準では 違法ですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.