continue 语句

< cpp‎ | language

导致外围 for范围 forwhiledo-while 循环体的剩余部分被跳过。

可在不用它而用条件语句忽略循环的剩余部分显得笨拙时使用。

语法

属性(可选) continue ;

解释

continue 语句导致跳转,如同用 goto 跳转到循环体末尾一样(它只能出现在 for范围 forwhiledo-while 循环的循环体内)。

更确切地说,

对于 while 循环,它表现为

while (/* ... */) {
   // ... 
   continue; // 作用如同 goto contin;
   // ...
   contin:;
}

对于 do-while 循环,它表现为:

do {
    // ...
    continue; // 作用如同 goto contin;
    // ...
    contin:;
} while (/* ... */);

对于 for范围 for 循环,它表现为:

for (/* ... */) {
    // ...
    continue; // 作用如同 goto contin;
    // ...
    contin:;
}

关键词

continue

示例

#include <iostream>
 
int main() 
{
    for (int i = 0; i < 10; i++) {
        if (i != 5) continue;
        std::cout << i << " ";       // 此语句在每次 i!=5 时跳过
    }
 
    std::cout << '\n';
 
    for (int j = 0; j < 2; j++) {
        for (int k = 0; k < 5; k++) {   // 仅此循环受 continue 影响
            if (k == 3) continue;
            std::cout << j << k << " "; // 此语句在每次 k==3 时跳过
        }
    }
}

输出:

5
00 01 02 04 10 11 12 14

参阅