ホームページ > バックエンド開発 > C++ > C の switch ステートメント内からループを抜け出す方法

C の switch ステートメント内からループを抜け出す方法

Mary-Kate Olsen
リリース: 2024-10-30 03:35:28
オリジナル
550 人が閲覧しました

How to Break Out of Loops from Within Switch Statements in C  ?

スイッチ内からループを抜け出す

C では、switch ステートメント内からループを抜け出す必要がある場合があります。提供されたコード スニペットでは、ユーザーはメッセージの状態が DONE に設定されたときにループを終了したいと考えています。

goto ステートメントを使用する

最も簡単な方法これを実現するには、以下のコードに示すように、goto ステートメントを使用します。

<code class="c++">while ( ... ) {
   switch( ... ) {
     case ...:
         goto exit_loop;

   }
}
exit_loop: ;</code>
ログイン後にコピー

この例では、状態が DONE に設定されている場合、goto ステートメントはラベル exit_loop にジャンプし、事実上両方のループから抜け出します。 switch ステートメントと while ループ。

フラグ変数の使用

別のアプローチは、フラグ変数を使用することです。これは、switch ステートメント内で目的の条件が満たされた場合に true に設定されるブール変数にすることができます。 switch ステートメントの後の flag 変数をチェックすることで、ループを中断できます。

次に例を示します:

<code class="c++">bool should_exit = false;

while ( ... ) {
   switch( ... ) {
     case ...:
         should_exit = true;
         break;
     // ... more stuff ...
     case DONE:
         should_exit = true;
         break;
   }

   if (should_exit) {
       break;
   }
}</code>
ログイン後にコピー

この場合、状態が次の場合に should_exit フラグが true に設定されます。 DONE に設定すると、switch ステートメントの後にフラグがチェックされるとループが中断されます。

以上がC の switch ステートメント内からループを抜け出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート