Diferencia entre revisiones de «goto»
De ArduWiki
(→Ejemplo) |
|||
(No se muestran 7 ediciones intermedias del mismo usuario) | |||
Línea 8: | Línea 8: | ||
== Parametros == | == Parametros == | ||
− | ;Etiqueta: Marca de llegada de goto. | + | ;Etiqueta: Marca de llegada de goto. Palabra terminada en ''':''' |
== Advertencias == | == Advertencias == | ||
Línea 16: | Línea 16: | ||
== Ejemplo == | == Ejemplo == | ||
− | < | + | <syntaxhighlight lang="c++"> |
for (byte g=255; g>-1; g--){ | for (byte g=255; g>-1; g--){ | ||
for (byte b = 0; b < 255; b++){ | for (byte b = 0; b < 255; b++){ | ||
Línea 27: | Línea 27: | ||
rescate: | rescate: | ||
//más instrucciones ... | //más instrucciones ... | ||
− | </ | + | </syntaxhighlight> |
== Vea también == | == Vea también == | ||
− | + | <categorytree mode=all>Estructura control</categorytree> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | == Referencias == | + | == Referencias externa== |
* [https://www.arduino.cc/reference/es/language/functions/time/millis/ Guia de referencia de Arduino] | * [https://www.arduino.cc/reference/es/language/functions/time/millis/ Guia de referencia de Arduino] | ||
− | [[Category:Estructura]] | + | [[Category:Estructura control]] |
Revisión actual del 01:25 27 jun 2019
Contenido
Descripción
Transfiere el flujo del programa a un punto etiquetado en el programa
Sintaxis
goto etiqueta;
Parametros
- Etiqueta
- Marca de llegada de goto. Palabra terminada en :
Advertencias
- El uso de goto se desaconseja en la programación C++ ya que no es necesaria, pero si se usa juiciosamente, se pueden simplificar ciertos programas.
- La razón por la que muchos programadores desaprueban el uso de goto es que con el uso incontrolado de sentencias goto, es fácil para crear un programa con el flujo del programa no definido, muy difícil de depurar.
- Dicho esto, hay casos en que una instrucción goto puede venir bien y simplificar la codificación. Una de estas situaciones es para salir de anidado de los bucles, o de los bloques lógicos if, en una determinada condición.
Ejemplo
for (byte g=255; g>-1; g--){
for (byte b = 0; b < 255; b++){
if (analogRead(0) > 250){
goto rescate;
}
//más instrucciones ...
}
}
rescate:
//más instrucciones ...
Vea también