Schleifen innerhalb von Schaltern ausbrechen
In C ist es manchmal notwendig, aus einer Schleife innerhalb einer Switch-Anweisung auszubrechen. Im bereitgestellten Codeausschnitt möchte der Benutzer die Schleife verlassen, wenn der Status der Nachricht auf FERTIG gesetzt ist.
Verwenden der goto-Anweisung
Der einfachste Weg dazu Dies erreichen Sie, indem Sie die goto-Anweisung verwenden, wie im folgenden Code gezeigt:
<code class="c++">while ( ... ) { switch( ... ) { case ...: goto exit_loop; } } exit_loop: ;</code>
In diesem Beispiel springt die goto-Anweisung zur Bezeichnung „exit_loop“, wenn der Status auf „FERTIG“ gesetzt ist, und bricht damit effektiv aus beiden aus die switch-Anweisung und die while-Schleife.
Verwendung einer Flag-Variablen
Ein alternativer Ansatz ist die Verwendung einer Flag-Variablen. Dies kann eine boolesche Variable sein, die auf „true“ gesetzt wird, wenn die gewünschte Bedingung innerhalb der Switch-Anweisung erfüllt ist. Die Schleife kann dann unterbrochen werden, indem die Flag-Variable nach der Switch-Anweisung überprüft wird.
Hier ein Beispiel:
<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>
In diesem Fall wird das Flag „should_exit“ auf „true“ gesetzt, wenn der Status lautet auf DONE gesetzt und die Schleife wird unterbrochen, wenn das Flag nach der switch-Anweisung überprüft wird.
Das obige ist der detaillierte Inhalt vonWie kann ich innerhalb von Switch-Anweisungen in C aus Schleifen ausbrechen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!