El INDICADO es una declaración encontrada en muchos lenguajes de programación de la computadora que es una combinación de las palabras del inglés el va y a . Cuando le está ejecutado causa una transferencia incondicional del control (un " jump") a otra declaración. Saltar-a la declaración se especifica usar una cierta clase de la etiqueta, que puede ser un identificador o una línea número dependiendo de la lengua. En el nivel del código automático un goto es una forma de la rama o de la declaración del salto.
En algunas idiomas, la funcionalidad de goto puede estar presente sin el uso explícito de la palabra clave goto, tal como donde una palabra clave de break o de continue se puede seguir cerca con un identificador que denota una etiqueta. El lenguaje de programación SNOBOL apoya una forma de sufijo de la declaración que cause una transferencia del control incondicional después de que la declaración haya acabado la ejecución.
Las declaraciones INDICADAS se encuentran en la mayoría de los idiomas de alto nivel que allí son algunos idiomas de alto nivel que no apoyan una declaración de goto, por ejemplo en el Java (donde está una palabra reservada pero no sirve actualmente goto ninguna función).
La declaración de goto se combina a menudo con el si la declaración para causar una transferencia del control condicional.
SI etiqueta indicada ENTONCES de la condición del de ;
Los lenguajes de programación imponen diversas restricciones con respecto la localización del salto de una declaración de goto. Por ejemplo, en el lenguaje de programación C no se permite saltar a una etiqueta contenida dentro de otra función. Las funciones setjmp/longjmp proporcionan la ayuda para los gotos non-local.
La declaración INDICADA ha sido la blanco de muchas críticas, la demanda que es ese uso de INDICADO produce el " ilegible y generalmente unmaintainable; " del código de espagueti ;. Mientras que la programación estructurada llegó a ser más popular en los años 60 y los años 70, muchos informáticos llegaron a la conclusión que los programas deben utilizar siempre comandos reguladores de corriente “estructurados” supuestos tales como lazos y si entonces - las declaraciones otras en lugar de INDICADO. Sin embargo, otros creyeron que el uso de INDICADO incondicional no llevó al código de la mal calidad y que hay algunas tareas que no se pueden directo lograr en muchos lenguajes de programación sin el uso de uno o más declaraciones INDICADAS, tales como ejecución del estallido de los autómatas finito de los lazos jerarquizados y de la dirección de excepción .
Las críticas más famosas de INDICADO son probablemente 1968 que la letra por el Edsger Dijkstra llamado va al de la declaración consideraba dañoso en esa letra Dijkstra sostuvo que las declaraciones INDICADAS sin restricción se deben suprimir de idiomas de alto nivel porque complicaron la tarea de analizar y de verificar la corrección de programas (particularmente ésas que implican lazos). Un punto de vista alternativo se presenta en el Donald programación estructurada del de s de Knuth que la 'con va a las declaraciones que analiza muchas tareas programadas comunes y encuentra que eso en algunos de ellos INDICADOS es la construcción de lengua óptima a utilizar.
El diseño de la lengua del Ada tomó la nota de las críticas antedichas, pero la declaración fue incluida en la lengua a pesar de ellas, para apoyar principalmente el código automáticamente generado donde el goto pudo probar la indispensable. Sin embargo, las etiquetas usadas como la destinación de una declaración indicada toman la forma inusual de un identificador incluido en los corchetes menores/mayores dobles (e. <
Hay un número de diversas construcciones de lengua que se pueden describir como formas del indicado:
goto que no es una declaración INDICADA tradicional en absoluto. Toma un nombre de función y un control de transferencias con eficacia substituyendo una llamada de función para otra (una llamada de la cola): la nueva función no volverá al INDICADO, sino que por el contrario al lugar de el cual la función original fue llamada. Las versiones tempranas COBOL tenían el verbo de la ALTERACIÓN para lograr esto.
.
| Random links: | Territorios de confianza de Naciones Unidas | Rubrication | James Shaffer | Regimiento de Tánger |