Switch ステートメント内からループを抜け出す
コード内を移動しているときに、ループを内側から抜け出す必要がある状況が発生する場合があります。 switch ステートメント。次のシナリオを考えてみましょう:
<code class="cpp">while(true) { switch(msg->state) { case MSGTYPE: // ... break; // ... more stuff ... case DONE: **HERE, break out of the loop itself** } }</code>
目標は、フラグや条件ブレークに頼ることなく、囲まれたループから抜け出すエレガントな方法を見つけることです。
迅速な終了: 'goto' の使用
C の領域では、'goto' ステートメントは簡単な解決策を提供します。現在の関数内の特定のラベルにジャンプできます。 「goto」を利用すると、switch ステートメント内からループをきれいに終了できます。
<code class="cpp">while ( ... ) { switch( ... ) { case ...: goto exit_loop; } } exit_loop: ;</code>
このアプローチは、ループを終了するための簡潔かつ明示的な方法を提供します。コードの可読性を維持するために、「goto」は控えめに使用する必要があることに注意してください。ただし、特定の状況では、シンプルで効果的な解決策が提供される場合があります。
以上がC の switch ステートメント内からループから抜け出すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。