C++ continue用法详解
continue 是 C++ 中的一个关键字,只能用在循环结构中,作用是终止本次循环,开始下一次循环。
C++ 的循环结构有三种,分别是 while、do while 和 for 循环。执行循环结构的时候,一旦遇到 continue 语句,则直接跳过循环中、continue 后续的所有代码,开始下一次循环。
举个简单的例子,下面的 C++ 程序实现打印从 1 到 10 中的所有奇数,我们使用 continue 语句跳过所有的偶数。
例如:
内层 for 循环中包含一个 continue 语句,当 j 的值为 2 的时候会执行 continue 语句,从而跳过 cout 语句,直接开始下一次循环。
执行程序,运行结果为:
在嵌套的循环结构中,continue 语句仅影响包裹它的最内层循环。
C++ 的循环结构有三种,分别是 while、do while 和 for 循环。执行循环结构的时候,一旦遇到 continue 语句,则直接跳过循环中、continue 后续的所有代码,开始下一次循环。
举个简单的例子,下面的 C++ 程序实现打印从 1 到 10 中的所有奇数,我们使用 continue 语句跳过所有的偶数。
#include <iostream> int main() { for (int i = 1; i <= 10; i++) { if (i % 2 == 0) { continue; // 如果是偶数,则跳过剩余代码 } std::cout << i << " "; } return 0; }重点分析程序中的 for 循环,循环过程满足条件
i%2==0
,证明当前 i 的值是一个偶数,则执行 continue 语句,终止本次循环,即不再执行后续的 cout 输出语句,立刻开始下一次循环。
执行程序,输出结果为:对于 for 循环来说,所谓开始下一次循环,指的是执行 i++ 语句,然后判断表达式 i<=10 的结果,如果为 true 则继续执行循环体,反之则结束循环。
1 3 5 7 9
在嵌套循环中使用continue
在嵌套的循环结构中,continue 仅影响包裹它的最内部循环。例如:
#include <iostream> int main() { for (int i = 1; i <= 3; i++) { for (int j = 1; j <= 3; j++) { if (j == 2) { continue; // 当 j 等于 2 时跳过 } std::cout << i << ", " << j << "\n"; } } return 0; }观察程序中两个嵌套的 for 循环,外层 for 循环的 i 值从 1 递增到 3,内层 for 循环的 j 值也是从 1 递增到 3。
内层 for 循环中包含一个 continue 语句,当 j 的值为 2 的时候会执行 continue 语句,从而跳过 cout 语句,直接开始下一次循环。
执行程序,运行结果为:
1, 1
1, 3
2, 1
2, 3
3, 1
3, 3
总结
continue 语句只能用在循环结构中,它的功能是终止本次循环,立即开始下一次循环。在嵌套的循环结构中,continue 语句仅影响包裹它的最内层循环。