Reference Language (extended) | Libraries | Comparison | Changes
Cambia el flujo de programa, saltando la ejecucion al punto etiquetado que se le indique.
label:
goto label; // envía el flujo de programa a la línea de label
Usar goto no está aconsejado en la programación en C, y algunos autores de libros sobre este lenguaje indican que esta declaración nunca es necesaria. Sin embargo, si se usa de forma razonada, puede simplificar ciertos programas. La razón que muchos programadores emplean contra el uso del goto es que con su uso indiscriminado es fácil crear programas sin un flujo definido, por lo que se dificulta mucho la depuración.
Como dicen, hay instancias donde la declaración goto puede ser útil, simplificando el código. Una de estas situaciones es romper varios bucles for anidados, o bloques lógicos if, en ciertas condiciones.
for (byte r = 0; r < 255; r++) {
for (byte g = 255; g > -1; g--) {
for (byte b = 0; b < 255; b++) {
if (analogRead(0) > 250) { goto bailout;}
// más instrucciones ...
}
}
}
bailout:
Correcciones, sugerencias, y nueva documentación deberán ser publicadas en el Foro (castellano) o en el Foro (inglés).
El texto de la referencia de Arduino está publicado bajo la licencia Creative Commons Reconocimiento-Compartir bajo la misma licencia 3.0. Los ejemplos de código de la referencia están liberados al dominio público.