C++中continue和break语句的区别
break
和 continue
是相同类型的语句,专门用于改变程序的正常流程,但它们之间仍有一些区别。
- break 语句 :break 语句终止最小的封闭循环(即 while、do-while、for 或 switch 语句)
- continue 语句 : continue 语句跳过循环语句的其余部分并导致循环的下一次迭代发生。
一个例子来理解 break
和 continue
语句之间的区别。
// CPP program to demonstrate difference between
// continue and break
#include <iostream>
using namespace std;
main()
{
int i;
cout << "The loop with break produces output as: \n";
for (i = 1; i <= 5; i++) {
// Program comes out of loop when
// i becomes multiple of 3.
if ((i % 3) == 0)
break;
else
cout << i << " ";
}
cout << "\nThe loop with continue produces output as: \n";
for (i = 1; i <= 5; i++) {
// The loop prints all values except
// those that are multiple of 3.
if ((i % 3) == 0)
continue;
cout << i << " ";
}
}
运行结果:
The loop with break produces output as:
1 2
The loop with continue produces output as:
1 2 4 5
程序说明:
在第一个 for
循环中,使用了 break
语句。
- 当循环第一次迭代时,
i=1
的值,if
语句的计算结果为false
,因此执行else
条件/语句。 - 再次循环迭代
i= 2
的值,else
语句被实现为if
语句评估为假。 - 循环再次迭代
i=3;
如果条件评估为真并且循环中断。
在第二个 for 循环中,这里使用 continue
语句。
- 当循环第一次迭代时
i=1
的值,if
语句的计算结果为false
,因此执行else
条件/语句2。 - 再次循环迭代
i= 2
的值,else
语句被实现为if
语句评估为假。 - 循环再次迭代
i=3;
如果条件评估为真,则代码在此之间停止并开始新的迭代,直到满足结束条件。