do-while
-Anweisung (C)
Mit der do-while
-Anweisung wird eine Anweisung oder ein Anweisungsblock wiederholt ausgeführt, bis ein bestimmter Ausdruck den Wert "false" liefert.
Syntax
iteration-statement
: do
statement
while (
expression
) ;
expression
in einer do-while
-Anweisung wird ausgewertet, nachdem der Text der Schleife ausgeführt wurde. Daher wird der Text der Schleife immer mindestens einmal ausgeführt.
Der expression
muss einen arithmetischen Typ oder einen Zeigertyp aufweisen. Die Ausführung erfolgt folgendermaßen:
Der Anweisungstext wird ausgeführt.
Danach wird
expression
ausgewertet. Wennexpression
„false“ ist, wird diedo-while
-Anweisung beendet, und die Steuerung wird an die nächste Anweisung im Programm weitergegeben. Wennexpression
„true“ (ungleich 0 [null]) ist, wird der Prozess wiederholt, beginnend mit Schritt 1.
Die do-while
-Anweisung kann auch beendet werden, wenn eine break
-, goto
- oder return
-Anweisung innerhalb des Anweisungstexts ausgeführt wird.
In diesem Beispiel wird die do-while
-Anweisung veranschaulicht:
do
{
y = f( x );
x--;
} while ( x > 0 );
In dieser do-while
-Anweisung werden die beiden Anweisungen y = f( x );
und x--;
unabhängig vom Anfangswert von x
ausgeführt. Anschließend wird x > 0
ausgewertet. Wenn x
größer als 0 ist, wird der Anweisungstext noch einmal ausgeführt und x > 0
erneut ausgewertet. Der Anweisungstext wird wiederholt ausgeführt, solange x
größer als 0 ist. Die Ausführung der do-while
-Anweisung wird beendet, wenn x
0 oder negativ ist. Der Text der Schleife wird mindestens einmal ausgeführt.