Die while-Schleife ist also eine abweisende Schleife: Wenn die Laufbedingung schon beim ersten Auswerten nicht erfüllt ist, dann wird der Anweisungsteil gar nicht ausgeführt.
Innerhalb der Schleife kann man aber auch gezielt mit einer break-Anweisung die Schleife ganz abbrechen, oder mit continue den Rest des Anweisungsteils überspringen und gleich zum Prüfen der Bedingung zurückkehren.
Beispiele:
while( i ) --i;zählt die Variable i so lange herunter, bis sie 0 ist.
while( --i );macht fast das gleiche; die Anweisung hinter while() ist die leere Anweisung24.
while( (c=fgetc(f))!=EOF ) { printf( "c ist %d\n", c ); if( c==26 ) break; if( isprint(c) ) { printf( "%c\n", c ); continue; } printf( "c ist nicht druckbar!\n" ); }Hier wird die Schleife vorzeitig mit break verlassen, wenn der Wert 26 gelesen wurde.
Mit der continue-Anweisung wird zum Prüfungsteil der Schleife gesprungen, ohne den Rest des Schleifenkörpers zu beachten.