Espacios de nombres
Variantes
Acciones

Instrucción break

De cppreference.com
< cpp‎ | language

Hace que los bucles for, range-for, while o do-while o la instrucción witch termine.

Se usa cuando es incómodo terminar el bucle mediante una expresión de condición e instrucciones condicionales.

Contenido

[editar]Sintaxis

atrib(opcional)break;

[editar]Explicación

Después de esta instrucción se transfiere el control a la instrucción que sigue inmediatamente al final del bucle o switch. Como con la salida de cualquier bloque, todos los objetos declarados de almacenamiento automático dentro de la instrucción compuesta o en la condición de un bucle/switch se destruyen, en orden inverso al de construcción, antes de la ejecución de la primera línea que sigue al final del bucle/switch.

[editar]Palabras clave

break

[editar]Notas

Una instrucción break no se puede usar para salir de varios bucles anidados. Se puede usar la instrucción goto con este propósito.

[editar]Ejemplo

#include <iostream>   int main(){int i =2;switch(i){case1:std::cout<<"1";//<---- puede que advertencia: atraviesa(fall through)case2:std::cout<<"2";// la ejecución empieza en esta etiqueta case (+advertencia)case3:std::cout<<"3";//<---- puede que advertencia: atraviesa(fall through)case4://<---- puede que advertencia: atraviesa(fall through)case5:std::cout<<"45";//break;//se termina la ejecución de la instrucciones subsiguientescase6:std::cout<<"6";}   std::cout<<'\n';   for(int j =0; j <2; j++){for(int k =0; k <5; k++){//break solo afecta a este bucleif(k ==2)break;//std::cout<< j << k <<' ';//}}}

Posible salida:

2345 00 01 10 11

[editar]Véase también

[[fallthrough]](C++17) indica que la llegada desde la etiqueta case previa es intencionada y no debe diagnosticarse por el compilador que advierte sobre esta circunstancia
close