C++ 中的 break 与 continue

Jinku Hu 2023年10月12日
  1. 使用 break 语句操作符终止循环
  2. 使用 continue 语句跳过循环体的一部分
C++ 中的 break 与 continue

本文将演示关于如何在 C++ 中使用 breakcontinue 语句的多种方法。

使用 break 语句操作符终止循环

continue 类似的 break 语句称为跳转语句,用于中断程序执行的流程。在这种情况下,利用 break 来终止 for 循环语句。注意,当到达 break 并执行时,程序离开循环体,从下一条语句- cout << item << "3"继续。break 必须与迭代或 switch 语句一起使用,并且它只影响最近的循环或 switch

#include <iostream>
#include <vector>

using std::cin;
using std::cout;
using std::endl;
using std::for_each;
using std::string;
using std::vector;

int main() {
  vector<string> arr1 = {"Gull", "Hawk"};

  for (auto &item : arr1) {
    cout << item << " 1 " << endl;
    for (const auto &item1 : arr1) {
      cout << item << " 2 " << endl;
      if (item == "Hawk") {
        break;
      }
    }
    cout << item << " 3 " << endl;
  }

  return EXIT_SUCCESS;
}

输出:

Gull 1
Gull 2
Gull 2
Gull 3
Hawk 1
Hawk 2
Hawk 3

使用 continue 语句跳过循环体的一部分

continue 语句是一种语言特征,可用于终止当前的循环迭代并开始执行下一次迭代。continue 只能用于 forwhiledo while 循环中。如果语句被放在多个嵌套的循环块中,continue 将只中断内部循环的迭代,并继续评估条件表达式。

在下面的例子中,如果当前的 vector 元素等于 Hawk,就会达到 continue 语句。执行完毕后,程序就会评估 for 循环表达式,当前 vector 中是否还有其他元素。如果为真,则执行 cout << item << 2 行,否则达到 cout << item << 3

#include <iostream>
#include <vector>

using std::cin;
using std::cout;
using std::endl;
using std::for_each;
using std::string;
using std::vector;

int main() {
  vector<string> arr1 = {"Gull", "Hawk"};

  for (auto &item : arr1) {
    cout << item << " 1 " << endl;
    for (const auto &item1 : arr1) {
      cout << item << " 2 " << endl;
      if (item == "Hawk") {
        continue;
      }
    }
    cout << item << " 3 " << endl;
  }
  cout << endl;

  return EXIT_SUCCESS;
}

输出:

Gull 1
Gull 2
Gull 2
Gull 3
Hawk 1
Hawk 2
Hawk 2
Hawk 3
作者: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

DelftStack.com 创始人。Jinku 在机器人和汽车行业工作了8多年。他在自动测试、远程测试及从耐久性测试中创建报告时磨练了自己的编程技能。他拥有电气/电子工程背景,但他也扩展了自己的兴趣到嵌入式电子、嵌入式编程以及前端和后端编程。

LinkedIn Facebook

相关文章 - C++ Loop