原文: https://beginnersbook.com/2017/08/cpp-break-statement/

break语句用于以下两种情况:

a)使用break语句立即退出循环。每当在循环内遇到break语句时,控制流就会直接从循环中退出。它与if语句一起使用,只能在循环内部使用(参见下面的示例),以便它仅在特定条件下发生。

b)用于switch-case控制结构。通常,在switch case中的所有情况都跟一个break语句,以避免后续的情况(参见下面的例子)执行。无论何时在switch-case块中遇到,控制流都从switch-case体中出来。

break语句的语法

  1. break;

break语句流程图

C   中的`break`语句 - 图1

示例 - 在while循环中使用break语句

在下面的示例中,我们有一个从 10 到 200 运行的while循环,但由于我们有一个在循环计数器,变量值达到 12 时遇到break语句,循环终止并且控制流跳转到程序中循环体之后的下一个语句。

  1. #include <iostream>
  2. using namespace std;
  3. int main(){
  4. int num =10;
  5. while(num<=200) {
  6. cout<<"Value of num is: "<<num<<endl;
  7. if (num==12) {
  8. break;
  9. }
  10. num++;
  11. }
  12. cout<<"Hey, I'm out of the loop";
  13. return 0;
  14. }

输出:

  1. Value of num is: 10
  2. Value of num is: 11
  3. Value of num is: 12
  4. Hey, I'm out of the loop

示例:for循环中的break语句

  1. #include <iostream>
  2. using namespace std;
  3. int main(){
  4. int var;
  5. for (var =200; var>=10; var --) {
  6. cout<<"var: "<<var<<endl;
  7. if (var==197) {
  8. break;
  9. }
  10. }
  11. cout<<"Hey, I'm out of the loop";
  12. return 0;
  13. }

输出:

  1. var: 200
  2. var: 199
  3. var: 198
  4. var: 197
  5. Hey, I'm out of the loop

示例:switch-case中的break语句

  1. #include <iostream>
  2. using namespace std;
  3. int main(){
  4. int num=2;
  5. switch (num) {
  6. case 1: cout<<"Case 1 "<<endl;
  7. break;
  8. case 2: cout<<"Case 2 "<<endl;
  9. break;
  10. case 3: cout<<"Case 3 "<<endl;
  11. break;
  12. default: cout<<"Default "<<endl;
  13. }
  14. cout<<"Hey, I'm out of the switch case";
  15. return 0;
  16. }

输出:

  1. Case 2
  2. Hey, I'm out of the switch case

在这个例子中,我们在每个case块之后都有break语句,这是因为如果我们没有它,那么后续的case块也会执行。没有break的同一程序的输出将是:

  1. Case 2
  2. Case 3
  3. Default
  4. Hey, I'm out of the switch case