dポイントプレゼントキャンペーン実施中!

flag変数が理解に苦しむ!(C++)
ライントレースで誤差動を防ぐためにflag変数を入れます。
宣言はint flag=0でOFF,flag=1でONとしています。右のセンサーのフラクが立っている間は左のセンサーのフラグは立たないようにします。
if(p1_0==0 && flag==1){
turnright();
continue;

if(p1_3==0 && flag==1) {
turnleft();
continue;

これではエラーと出ます。何か違うのは感じるのですが、ど忘れしました。宣言から間違っている気がするので、プログラミングLOVEな先輩方にご教示願いたいと思いますm(__)m

質問者からの補足コメント

  • 補足しようとするとエラーでる

      補足日時:2018/12/13 14:06
  • ok?では改めて。ifではなくelseifです。この前に前進のプログラムがあります。すみません。

      補足日時:2018/12/13 14:07
  • 括弧を連打しましたねこれは。すみません。プログラムの方を再確認した所、{}になってたので携帯での入力ミスです。

      補足日時:2018/12/13 14:46

A 回答 (3件)

2個目のifのブロック閉じて無いけど


大丈夫?

で、コンパイルエラーが出たらエラーメッセージを載せる。
これはプログラミングの質問の基本の基本の基本。
    • good
    • 0

具体的に


○どの段階で
 ・コンパイル時
 ・実行時
○どんなエラーになるのですか?
 ・エラーメッセージが出てコンパイルできない
 ・警告メッセージが出る(コンパイルはできる)
 ・エラーメッセージは出ないが、実行時にエラーになって止まる

提示されたところだけ見ると、間違ってはいないように見えます。
ですが、 } の向き間違いのような写し間違いがあるので、この内容だけで判断できません。
「elseif」というのも、そのまま「elseif」と書いているのか、「else if」と分けて書いているのかでも違いますし。
    • good
    • 0

最後の括弧の向きが違いますけど

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!