Una sentencia continue dentro de un bucle forzará al programa a finalizar la iteración actual del mismo y comenzar la siguiente.

Se denomina iteración a cada ejecución del grupo de sentencias interior a un bucle (las sentencias entre un LOOP y su final, por ejemplo).

No se puede poner esta sentencia más que dentro de los siguientes bucles:

LOOP {...}
Un continue dentro de este bucle saltará al LOOP.

do {...} while (..)
Un continue dentro de este bucle saltará al while.

while ( .. ) {...}
Un continue dentro de este bucle saltará al while.

for ( .. ; .. ; .. ) {...}
Un continue dentro de este bucle realizará el incremento y la comparación; si ésta última resulta cierta continuará el programa al inicio del bucle, si resulta falsa el programa continuará tras el final del for.

En caso de haber varios bucles anidados (unos dentro de otros) la sentencia continue tendrá efecto únicamente en el bucle más interior de ellos.


MAIN_PROGRAM_CDIV
BEGIN_PROGRAM
    for (x=0, y=0; x < 10; x++){
        if (x<5) continue; 
        y++;
    }
END_PROGRAM

En este ejemplo, tras ejecutarse el bucle completo, x valdrá 10 e y valdrá 5, pues mientras x es menor que 5 la sentencia continue impide que se ejecute la sentencia y++;.

Importante

La sentencia continue no es válida dentro de sentencias if, ni switch (ni las secciones case de esta sentencia), (ya que estas sentencias no implementan bucles y, por tanto, no realizan iteraciones).


Ver: Sintaxis