2. Instrucciones (C++)
• Las instrucciones de C++ son los elementos de programa que controlan cómo y en qué orden se manipulan los objetos. Esta
sección incluye:
• Información general
• Instrucciones con etiqueta
• Categorías de instrucciones
• Instrucciones de expresión. Estas instrucciones evalúan una expresión para ver sus efectos secundarios o para averiguar su valor devuelto.
• Instrucciones NULL. Estas instrucciones se pueden proporcionar cuando la sintaxis de C++ requiere una instrucción pero no se va a realizar
ninguna acción.
• Instrucciones compuestas. Estas instrucciones son grupos de instrucciones entre llaves ({}). Se pueden utilizar donde se puede utilizar una
sola instrucción.
• Instrucciones de selección. Estas instrucciones realizan una prueba; a continuación, ejecutan una sección de código si la prueba se evalúa
como true (distinto de cero). Pueden ejecutar otra sección de código si la prueba se evalúa como false.
• Instrucciones de iteración. Estas instrucciones ejecutan repetidamente un bloque de código hasta que se cumple un criterio de finalización
especificado.
• Instrucciones de salto. Estas instrucciones transfieren el control inmediatamente a otra ubicación de la función o devuelven el control de la
función.
• Instrucciones de declaración. Las declaraciones introducen un nombre en un programa. (En Declaraciones se proporciona información más
detallada sobre las declaraciones).
3. Información general sobre las instrucciones de C++
Las instrucciones de C++ se ejecutan secuencialmente, excepto
cuando una instrucción de expresión, una instrucción de selección,
una instrucción de iteración o una instrucción de salto modifica
específicamente esa secuencia.
Las instrucciones pueden ser de los tipos siguientes:
4. • En la mayoría de los casos, la sintaxis de la instrucción de C++ es idéntica a la de ANSI C. La principal
diferencia entre los dos es que en C las declaraciones solo se permiten al principio de un bloque; C++
agrega el elemento declaration-statement, que elimina eficazmente esta restricción. Esto permite
introducir variables en un punto del programa donde se puede calcular un valor de inicialización
precalculado.
• Declarar variables dentro de bloques también permite controlar con precisión el ámbito y la duración de
esas variables.
• Los temas sobre instrucciones describen las siguientes palabras clave de C++:
5. Instrucciones con etiquetas
Las etiquetas se usan para transferir el control de programas directamente a la instrucción especificada.
6. Comentarios
• Hay tres tipos de instrucciones con etiquetas. En todas ellas se utiliza el carácter de dos puntos para distinguir el tipo
de etiqueta de la instrucción. La etiqueta case y las etiquetas predeterminadas son específicas para las instrucciones
case.
7. La instrucción goto
• La etiqueta tiene ámbito de función y no se puede volver a declarar dentro de la función. Sin embargo, se
puede utilizar el mismo nombre como una etiqueta en diferentes funciones.
8. La instrucción case
• Las etiquetas que aparecen después de la palabra clave case no pueden aparecer también fuera de una instrucción
Smith (Esta restricción también se aplica a la palabra clave default). En el fragmento de código siguiente se muestra el
uso correcto de las etiquetas case:
9. Etiquetas en la instrucción case
Las etiquetas que aparecen después de la palabra clave case no pueden aparecer también fuera
de una instrucción :
10. Expresión (Instrucción)
Las instrucciones de expresión hacen que se evalúen las expresiones. No se realiza ninguna
transferencia de control o iteración como resultado de una instrucción de expresión.
La sintaxis de la instrucción de expresión es simplemente
Sintaxis
• Comentarios
• Todas las expresiones de una instrucción de expresión se evalúan y se aplican todos los efectos secundarios antes de que se ejecute la
siguiente instrucción. Las instrucciones de expresión más comunes son las asignaciones y las llamadas a funciones. Puesto que la
expresión es opcional, un punto y coma solo se considera una instrucción de expresión vacía, denominada instrucción null.
11. Instrucciones compuestas (Bloques)
• Una instrucción compuesta consta de cero o más instrucciones entre llaves ({ }). Una instrucción compuesta se puede
utilizar en cualquier lugar donde se espere una instrucción. Las instrucciones compuestas normalmente se denominan
"bloques".
• Sintaxis
• Comentarios
• En el ejemplo siguiente se utiliza una instrucción compuesta como la parte statement de la instrucción i|f (vea Instrucción if para
obtener más detalles sobre la sintaxis):
•
12. Instrucciones de selección (C++)
• Las instrucciones de selección de C++, if y switch, proporcionan un medio de ejecutar
secciones de código de forma condicional.
• Las instrucciones if exists e if not exists permiten incluir de forma condicional código
dependiendo de la existencia de un símbolo.
• Vea en cada tema individual la sintaxis de cada instrucción.
13. Instrucciones de iteración (C++)
• Las instrucciones de iteración producen instrucciones (o instrucciones compuestas) que se ejecutarán cero o más
veces, según determinados criterios de la finalización de bucle. Cuando estas instrucciones son instrucciones
compuestas, se ejecutan en orden, excepto cuando se encuentra la instrucción break o la instrucción continue.
• C++ proporciona cuatro instrucciones de iteración: while, do, for, y for basado en intervalo. Cada una de ellas se repite
hasta que la expresión de finalización se evalúa como cero (false) o hasta que se fuerza la finalización del bucle con una
instrucción break. En la tabla siguiente se resumen estas instrucciones y sus acciones; cada una se explica
detalladamente en las secciones siguientes.
• Instrucciones de iteración
15. Transferencias del control
Puede utilizar la instrucción goto o una etiqueta case en una instrucción switch para especificar un programa que se bifurque más allá de un
inicializador. Este código no es válido a menos que la declaración que contenga el inicializador esté en un bloque dentro del bloque en el
que aparezca la instrucción de salto.
En el ejemplo siguiente se muestra un bucle que declara e inicializa los objetos total, ch y i. Hay también una instrucción goto errónea que
transfiere el control más allá de un inicializador.