La sentencia continue se salta el resto de la iteración actual de un bucle (do, for, o while). Después continúa la comprobación de la expresión condicional del bucle, y con cualquiera de las iteraciones posteriores.A diferencia de break, el bucle no se abandona, sino que se seguirá ejecutando mientras la condición se cumpla.
The following code exits the for loop when the i greater than 3
void setup() {
Serial.begin(9600);
Serial.println("====== TEST START ======");
for (int i = 1; i < 5; i++) {
Serial.print("Inside the FOR loop: i = ");
Serial.print(i);
Serial.println(", start");
if(i > 2)
continue;
Serial.print("Inside the FOR loop: i = ");
Serial.print(i);
Serial.println(", end");
}
Serial.println("====== TEST END ========");
}
void loop() {}
The result on Serial Monitor:
====== TEST START ======
Inside the FOR loop: i = 1, start
Inside the FOR loop: i = 1, end
Inside the FOR loop: i = 2, start
Inside the FOR loop: i = 2, end
Inside the FOR loop: i = 3, start
Inside the FOR loop: i = 4, start
====== TEST END ========
The following code writes the value of 0 to 255 to the PWMpin, but skips the values in the range of 41 to 119.
for (x = 0; x < 255; x ++) {
if (x > 40 && x < 120) {
continue;
}
analogWrite(PWMpin, x);
delay(50);
}
The following code exits the while loop when the i greater than 3
void setup() {
Serial.begin(9600);
Serial.println("====== TEST START ======");
int i = 0;
while (i < 5) {
i++;
Serial.print("Inside the WHILE loop: i = ");
Serial.print(i);
Serial.println(", start");
if(i > 2)
continue;
Serial.print("Inside the WHILE loop: i = ");
Serial.print(i);
Serial.println(", end");
}
Serial.println("====== TEST END ========");
}
void loop() {
}
The result on Serial Monitor:
====== TEST START ======
Inside the WHILE loop: i = 1, start
Inside the WHILE loop: i = 1, end
Inside the WHILE loop: i = 2, start
Inside the WHILE loop: i = 2, end
Inside the WHILE loop: i = 3, start
Inside the WHILE loop: i = 4, start
====== TEST END ========
The following code exits the while loop when the i greater than 3
void setup() {
Serial.begin(9600);
Serial.println("====== TEST START ======");
int i = 0;
do {
i++;
Serial.print("Inside the DO WHILE loop: i = ");
Serial.print(i);
Serial.println(", start");
if(i > 2)
continue;
Serial.print("Inside the WHILE loop: i = ");
Serial.print(i);
Serial.println(", end");
} while (i < 5);
Serial.println("====== TEST END ========");
}
void loop() {
}
The result on Serial Monitor:
====== TEST START ======
Inside the DO WHILE loop: i = 1, start
Inside the DO WHILE loop: i = 1, end
Inside the DO WHILE loop: i = 2, start
Inside the DO WHILE loop: i = 2, end
Inside the DO WHILE loop: i = 3, start
Inside the DO WHILE loop: i = 4, start
====== TEST END ========