Instrução break
(C++)
A instrução break
encerra a execução do loop delimitador mais próximo ou da instrução condicional na qual ele aparece. O controle passa para a instrução que segue o encerramento da instrução, se houver.
Sintaxe
break;
Comentários
A break
instrução é usada com a instrução condicional switch
e com as do
instruções , for
e while
loop.
Em uma instrução switch
, a instrução break
faz com que o programa execute a próxima instrução fora da instrução switch
. Sem uma instrução break
, cada instrução do rótulo case
correspondente até o fim da instrução switch
, incluindo a cláusula default
, é executada.
Em loops, a instrução break
encerra a execução da instrução delimitadora do
, for
ou while
mais próxima. O controle passa para a instrução que segue a instrução encerrada, se houver.
Em instruções aninhadas a instrução break
encerra apenas a instrução do
, for
, switch
ou while
que a delimita imediatamente. Você pode usar uma instrução return
ou goto
para transferir o controle de estruturas mais profundamente aninhadas.
Exemplo
O código a seguir mostra como usar a instrução break
em um loop for
.
#include <iostream>
using namespace std;
int main()
{
// An example of a standard for loop
for (int i = 1; i < 10; i++)
{
if (i == 4) {
break;
}
cout << i << '\n';
}
// An example of a range-based for loop
int nums []{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
for (int i : nums) {
if (i == 4) {
break;
}
cout << i << '\n';
}
}
1
2
3
1
2
3
O código a seguir mostra como usar break
em um loop while
e em um loop do
.
#include <iostream>
using namespace std;
int main() {
int i = 0;
while (i < 10) {
if (i == 4) {
break;
}
cout << i << '\n';
i++;
}
i = 0;
do {
if (i == 4) {
break;
}
cout << i << '\n';
i++;
} while (i < 10);
}
0
1
2
3
0
1
2
3
O código a seguir mostra como usar break
em uma instrução switch. Você deve usar break
em todos os casos se desejar tratar cada caso separadamente; se break
não for usada, a execução do código falhará no próximo caso.
#include <iostream>
using namespace std;
enum Suit{ Diamonds, Hearts, Clubs, Spades };
int main() {
Suit hand;
. . .
// Assume that some enum value is set for hand
// In this example, each case is handled separately
switch (hand)
{
case Diamonds:
cout << "got Diamonds \n";
break;
case Hearts:
cout << "got Hearts \n";
break;
case Clubs:
cout << "got Clubs \n";
break;
case Spades:
cout << "got Spades \n";
break;
default:
cout << "didn't get card \n";
}
// In this example, Diamonds and Hearts are handled one way, and
// Clubs, Spades, and the default value are handled another way
switch (hand)
{
case Diamonds:
case Hearts:
cout << "got a red card \n";
break;
case Clubs:
case Spades:
default:
cout << "didn't get a red card \n";
}
}
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de