continue-Anweisung
Von cppreference.com
Veranlasst, dass der verbleibende Teil des Körpers der umschließenden for-, while- oder do-while-Schleife übersprungen wird.
Wird verwendet, wenn es auf andere Weise umständlich ist, den verbleibenden Teil der Schleife mithilfe von bedingten Anweisungen zu ignorieren.
Inhalt |
[bearbeiten] Syntax
attr-spec-seq(optional) continue ; |
|||||||||
| attr-spec-seq | - | (C23)optionale Liste von Attributen, die auf die continue-Anweisung angewendet werden |
[bearbeiten] Erklärung
Die continue-Anweisung verursacht einen Sprung, als ob durch goto, zum Ende des Schleifenkörpers (sie darf nur innerhalb des Schleifenkörpers von for-, while- und do-while-Schleifen erscheinen).
Für eine while-Schleife wirkt sie wie
while (/* ... */) { // ... continue; // acts as goto contin; // ... contin:; }
Für eine do-while-Schleife wirkt sie wie
do { // ... continue; // acts as goto contin; // ... contin:; } while (/* ... */);
Für eine for-Schleife wirkt sie wie
for (/* ... */) { // ... continue; // acts as goto contin; // ... contin:; }
[bearbeiten] Schlüsselwörter
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <stdio.h> int main(void) { for (int i = 0; i < 10; i++) { if (i != 5) continue; printf("%d ", i); // this statement is skipped each time i != 5 } printf("\n"); for (int j = 0; j < 2; j++) { for (int k = 0; k < 5; k++) { // only this loop is affected by continue if (k == 3) continue; printf("%d%d ", j, k); // this statement is skipped each time k == 3 } } }
Ausgabe
5 00 01 02 04 10 11 12 14
[bearbeiten] Referenzen
- C17-Standard (ISO/IEC 9899:2018)
- 6.8.6.2 Die continue-Anweisung (S. 111)
- C11-Standard (ISO/IEC 9899:2011)
- 6.8.6.2 Die continue-Anweisung (S. 153)
- C99-Standard (ISO/IEC 9899:1999)
- 6.8.6.2 Die continue-Anweisung (S. 138)
- C89/C90-Standard (ISO/IEC 9899:1990)
- 3.6.6.2 Die continue-Anweisung
[bearbeiten] Siehe auch
| C++ Dokumentation für continue-Anweisung
|