6-6. continue
今日はコンテニューについて利用法とサンプルプログラムです。
ブレイクとセットで覚えると良いのですがこれもループに関するキーワードです。
ブレイクではループから抜け出していましたがコンテニューはループの最後にジャンプします。
─ループの先頭に戻るという説がありますが…
その説だと、forとwhileでちがう説明をしないといけなくなるのでここではコンテニューをみつけると以後のループ内の処理をスキップしてループの最後の部分にジャンプすると覚えてください。
ということは、次のプログラムの場合
while (a<10){ printf("... scanf("... if(a==3)continue; ─┐ a++; │ < ----------------──┘この行にジャンプ }
もしaが3のときcontinueが実行されます。すると次のa++が無視されループの最後にジャンプします。そしてwhileの終了条件の判定に移ります。
forの場合も同様にループの最後へジャンプします。そしてインクリメントして次のループにすすみます。
ここで、先程のようにループの先頭に戻る説を使わないのは、
コンテニューはループの先頭に後戻りするのものではなく、以後の処理を無視して次のループを開始するものなのです。
CDプレイヤーに例えると『前曲ボタンで頭出しするのでなく』
『次曲ボタンで一周する』と考えてください。なのでfor文ではちゃんとカウントされます。