Break文
最初の例として、内側のループからの抜け出しを示す。
このコードのbreak;は内側のループのみから抜け出す。外側のwhileループは無限ループになる。
次に、多重ループからの抜け出しについて論じる。
C言語では、多重ループから一気に抜ける際にはgoto文を使用することができる。
もしgoto文を使わずにbreak文を使って書くとすれば、一例としては以下のようになり、複雑かつ冗長となる。複雑度の上昇はバグの混入を許す原因ともなる。
ほかにも、関数をそのまま脱出して呼び出し元に制御を返してよいということが前提にあるのであれば、多重ループを脱出するのにreturn文を使うこともできる。
このような場合について、gotoを使うのと同程度に明瞭簡潔に書けるようにするため、次節以降で述べるように、gotoを廃した言語では、ラベル付きbreakなどの「弱められたgoto」と言えるような機能が考案されている。