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

在循环内使用continue语句。每当在循环内遇到continue语句时,控制流直接跳转到循环的开头以进行下一次迭代,跳过循环体内当前迭代的语句的执行。

continue语句的语法

  1. continue;

示例:for循环中的continue语句

正如你可以看到输出缺少值 3,但循环迭代num值 0 到 6。这是因为我们在循环中设置了一个条件,这种情况下当num值等于 3 时遇到语句。因此,对于此迭代,循环跳过cout语句并开始下一次循环迭代。

  1. #include <iostream>
  2. using namespace std;
  3. int main(){
  4. for (int num=0; num<=6; num++) {
  5. /* This means that when the value of
  6. * num is equal to 3 this continue statement
  7. * would be encountered, which would make the
  8. * control to jump to the beginning of loop for
  9. * next iteration, skipping the current iteration
  10. */
  11. if (num==3) {
  12. continue;
  13. }
  14. cout<<num<<" ";
  15. }
  16. return 0;
  17. }

输出:

  1. 0 1 2 4 5 6

continue语句的流程图

C   中的`continue`语句 - 图1

示例:在while循环中使用continue

  1. #include <iostream>
  2. using namespace std;
  3. int main(){
  4. int j=6;
  5. while (j >=0) {
  6. if (j==4) {
  7. j--;
  8. continue;
  9. }
  10. cout<<"Value of j: "<<j<<endl;
  11. j--;
  12. }
  13. return 0;
  14. }

输出:

  1. Value of j: 6
  2. Value of j: 5
  3. Value of j: 3
  4. Value of j: 2
  5. Value of j: 1
  6. Value of j: 0

do-while循环中continue的示例

  1. #include <iostream>
  2. using namespace std;
  3. int main(){
  4. int j=4;
  5. do {
  6. if (j==7) {
  7. j++;
  8. continue;
  9. }
  10. cout<<"j is: "<<j<<endl;
  11. j++;
  12. }while(j<10);
  13. return 0;
  14. }

输出:

  1. j is: 4
  2. j is: 5
  3. j is: 6
  4. j is: 8
  5. j is: 9