C++ continue 语句
continue 语句
continue 语句的工作方式与 break 语句有些相似。然而,它不是强制终止循环,而是强制执行循环的下一个迭代,跳过中间的任何代码。
对于 for 循环,continue 会导致循环的条件测试和递增部分执行。对于 while 和 do...while 循环,程序控制会传递到条件测试部分。
语法
C++ 中 continue 语句的语法如下 −
continue;
流程图
以下是展示 C++ 中 continue 语句的流程图:
示例
以下是 C++ 中 continue 语句的示例:
#include <iostream>
using namespace std;
int main () {
// 局部变量声明:
int a = 10;
// do 循环执行
do {
if( a == 15) {
// 跳过本次迭代。
a = a + 1;
continue;
}
cout << "value of a: " << a << endl;
a = a + 1;
}
while( a < 20 );
return 0;
}
输出
当上述代码编译并执行时,会产生以下结果 −
value of a: 10 value of a: 11 value of a: 12 value of a: 13 value of a: 14 value of a: 16 value of a: 17 value of a: 18 value of a: 19
解释
- 首先,do-while 循环将确保 do 部分内的代码块至少执行一次,然后检查条件 a < 20,并在满足条件时继续循环。
- 在 if 语句中,如果 a == 15,则 a = a + 1 将值递增 1,并且 continue 语句将跳过 15;因此,15 不会被打印。
continue 与 break 语句的比较
continue 语句跳过当前迭代的剩余部分,并移动到循环的下一个迭代。这主要用于用户希望基于条件跳过特定迭代的情况。它不会终止循环,只是将执行转移到下一个迭代。 而 break 语句基于给定的特定条件完全终止循环,并停止循环的进一步执行。
continue 语句的使用场景
- 过滤数据: 当过滤数据集中的无效或不需要的数据时,continue 语句非常有用。
- 跳过不必要的计算和无效用户输入: 通过使用 continue 语句,可以避免某些情况下结果已预定的冗余计算。
- 性能优化: 通过避免不必要的处理来优化整体性能。
- 适用于复杂循环结构: 复杂的循环结构需要选择性地执行迭代,使用 continue 语句对此类情况有益。