"break"如何在C++的while循环中工作?

how works "break" within a while-loop in C++?

本文关键字:循环 工作 while C++ break      更新时间:2023-10-16

我有一个简单的问题:当在while循环中有一个"break"-命令时,程序是否完成行,直到while循环结束,然后中断其重复,或者在执行"break"-命令时跳到while循环后的第一行?

它立即跳出包含while的循环(第6.6.1节):

break语句只能出现在迭代语句或switch语句中,并导致最小的封闭迭代语句或switch语句终止;控制传递给终止语句后面的语句(如果有的话)。

考虑下面的例子:

while (true) {
    break;
    std::cout << "Never gets here" << std::endl;
}
std::cout << "Jumps straight to here" << std::endl;

它会做以下事情

break语句终止最近的do、for、switch或while语句的执行。控制传递给终止语句后面的语句。