Aus einer einzigen nicht verschachtelten Ebene einer
mittels for
oder while
gebildeten Schleife kann man
durch die Benutzung von break
herausspringen.
Die Schleifenbearbeitung wird abgebrochen und das Programm
direkt nach der Schleife
fortgesetzt, ohne noch weitere Kontrollanweisungen oder
Schleifentests zu beachten. Das break
kann also
z.B. dazu dienen, Schleifen frühzeitig abzubrechen
oder ``Endlosschleifen'' zu verlassen.
// copy input to output while( true ) { char c; cin >> c; if ( cin.fail() ) break; // end of input or something wrong cout << c; }
Die continue
Anweisung
bewirkt, daß die Bearbeitung des Schleifenkörpers an dieser Stelle
abgebrochen und dann je nach Art der Schleife bei der
Kontrollanweisung (for(;;)
), bzw. dem Schleifentest
((do{}) while()
) wieder aufgenommen wird.
#include <cmath> // for sqrt() function double a[20]; // ... double sum_sqrt=0.; for( int i=0; i < 20; i++ ){ if ( a[i] < 0. ) continue; // work on next element sum_sqrt += sqrt( a[i] ); }
Es sei nochmals betont, daß sich continue
und break
nur auf die innerste Schleifenebene beziehen und nicht dazu benutzt
werden können, tiefer verschachtelte Schleifen zu verlassen.