do-whiledo-while-Schleifen sind sehr ähnlich zu
while-Schleifen, außer dass der Wahrheitsausdruck erst am
Ende eines jeden Durchlaufs statt zu dessen Beginn geprüft wird. Der
Hauptunterschied zu einer normalen while-Schleife ist, dass
die do-while-Schleife garantiert mindestens einmal
durchlaufen wird (Der Wahrheitsausdruck wird ja nur am Ende jeden Durchlaufs
geprüft), wohingegen es nicht zwingend ist, dass eine reguläre
while-Schleife immer ausgeführt wird (hier wird der
Wahrheitsausdruck bereits zu Beginn eines jeden Durchlaufs überprüft.
Evaluiert er dabei zu &false;, wird die Verarbeitung der Schleife sofort
abgebrochen).
Es gibt nur eine Syntax für do-while-Schleifen:
0);
?>
]]>
Die obige Schleife wird exakt einmal durchlaufen, da nach dem ersten Durchlauf,
wenn der Wahrheitsausdruck geprüft wird, dieser &false; ergibt
($i ist nicht größer als 0), so dass die
Schleifenausführung beendet wird.
Fortgeschrittenen C-Programmierern ist möglicherweise eine etwas andere
Verwendung von do-while-Schleifen bekannt, die es erlaubt,
die Ausführung in der Mitte des Codeblocks zu unterbrechen. Dies wird durch
ein Kapseln in do-while(0) und die Verwendung des break-Statements
erreicht. Das folgende Codefragment demonstriert dieses Verhalten:
]]>
Es ist möglich, statt dieses Hacks den goto-Operator
zu verwenden.