【C#入門】繰り返しの流れを途中で変える処理について分かりやすいサンプルコードで徹底解説②

今回は繰り返しの流れを途中で変える処理の続きです。
今回はgoto文について紹介します。

goto文

プログラムの制御をラベル付き文に直接移動するには、goto文を使用します。
の文でむやみにプログラムの流れを飛ば、 コードが複雑に絡み合ったいわゆる「スパゲッ
一見便利そうに見える制御文ですが、goto文でむやみにプログラムの流れを飛ばすと
制御構造がわかりづらくなりコードが複雑に絡みあっtら言わゆる「スパゲティプログラム」
になってしまいます。そのため、使わないほうがいいといわれている制御文です。
けれども、goto文を使ったほうがすっきりと記述できる例も存在します。
それは多重ループから一気に抜けたい場合です。break文で抜けられるのはそのbreak文が含まれるループのみです。
ですから、多重ループから一気に抜け出したい場合にはgoto文を使うとすっきり記述できます。
しかし、あくまで特殊な例に限りgoto文を使うようにし、多用は避けましょう。

● goto文

例題を見てみましょう。

gotoの実行結果

コラム

無限ループ
無限ループとは、その名のとおり永遠に終わることのない繰り返し処理ですが、
わざと無限ループを書く場合があります。当然、そのままでは次の処理に 進めませんので、
特定の条件でループをbreak文で飛び出すようにします。
無限ループは、while文かfor文を使って書きます。
do〜whileは繰り返しの 最後まで無限ループであることがわからないので、通常は使われません。

while文の無限ループ

継続条件式にtrueを記述するので、falseになって繰り返しを終了することがなく、
無限ループになります。

for文の無限ループ

カウンタ変数の初期化、ループの継続条件式、カウンタ変数の更新のすべてが
ないため無限ループになります。

Writer
壷井

壷井

株式会社flyhawkの壷井です。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報

フリーランスエンジニアの案件探し