- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:条件演算子論理ORについて)
C言語の条件演算子論理ORについて
このQ&Aのポイント
- C言語の条件演算子論理ORについての質問です。
- プログラムをコンパイラしている際にエラーが発生しています。
- エラーメッセージを添付しました。解決方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ちゃんとエラーメッセージを読みましょう。 Possibly Incorrect Assignment とありますね。 意味は「たぶん、変数の代入が変です」ということです。Warningが出ている行番号も確認してみましょう。 errorではなくWarningというところがミソです。このままコンパイルは通り、実行ファイルはできているはずです。 Cの条件判断の時に引っかかりやすいところなのです。 Cでの条件の書き方をもう一度復習してみてください。
その他の回答 (1)
- Wr5
- ベストアンサー率53% (2173/4061)
回答No.2
行番号がどこか…というのくらいは書かれた方が…… ついでに言うと、「エラー」ではなく「警告」です。 >if((a=1)||(b=2)||(c=3)) で、比較ではなく代入しているけど意図通りか? という警告でしょう。 >うまくいくと 最初のa=1が実行され、式の評価が真になるので、続くb=2とc=3は実行されない。 その為、 >1 >0 >0 >と表示されるようです。 となります。
質問者
お礼
ご親切な説明どうもありがとうございました。 未だに代入と==を間違えて考えてしまうときがあります。 ひたすら勉強を続けます。 このたびはご回答ありがとうございました。
お礼
どうもありがとうございました。 警告だったんですね。 そして実行してみたところ ちゃんと 0 1 1 とでました。 一番早く回答して頂いたsuzukikun様へベストアンサーにさせて頂きます