Instrucción do-while
(C)
La instrucción do-while
permite repetir una instrucción o una instrucción compuesta hasta que una expresión especificada sea false.
Sintaxis
iteration-statement
: do
statement
while (
expression
) ;
El elemento expression
en una instrucción do-while
se evalúa después de que se ejecute el cuerpo del bucle. Por consiguiente, el cuerpo del bucle se ejecuta siempre al menos una vez.
expression
debe tener un tipo aritmético o de puntero. La ejecución continúa de la siguiente manera:
Se ejecuta el cuerpo de instrucción.
A continuación, se evalúa
expression
. Siexpression
es false, la instruccióndo-while
finaliza y el control pasa a la siguiente instrucción del programa. Siexpression
es true (distinta de cero), el proceso se repite a partir del paso 1.
La instrucción do-while
también puede finalizar cuando se ejecuta una instrucción break
, goto
o return
dentro del cuerpo de la instrucción.
Este es un ejemplo de la instrucción do-while
:
do
{
y = f( x );
x--;
} while ( x > 0 );
En esta instrucción do-while
, se ejecutan las dos instrucciones y = f( x );
y x--;
, independientemente del valor inicial de x
. A continuación x > 0
se evalúa. Si x
es mayor que 0, el cuerpo de instrucción se ejecuta de nuevo y x > 0
se evalúa de nuevo. El cuerpo de instrucción se ejecuta repetidamente mientras x
siga siendo mayor que 0. La ejecución de la instrucción do-while
finaliza cuando x
se convierte en 0 o negativo. El cuerpo del bucle se ejecuta al menos una vez.