如何在不进入块结束的情况下立即退出while
循环?
例如,
while (choice != 99)
{
cin >> choice;
if (choice == 99)
//Exit here and don't get additional input
cin>>gNum;
}
有什么想法吗?
答案 0 :(得分:51)
使用break?
while(choice!=99)
{
cin>>choice;
if (choice==99)
break;
cin>>gNum;
}
答案 1 :(得分:8)
cin >> choice;
while(choice!=99) {
cin>>gNum;
cin >> choice
}
在这种情况下你不需要休息。
答案 2 :(得分:6)
使用 break ,因此:
while(choice!=99)
{
cin>>choice;
if (choice==99)
break; //exit here and don't get additional input
cin>>gNum;
}
这也适用于 for 循环,并且是结束switch子句的关键字。更多信息here。
答案 3 :(得分:3)
break;
。
while(choice!=99)
{
cin>>choice;
if (choice==99)
break;
cin>>gNum;
}
答案 4 :(得分:3)
是的,休息会奏效。但是,您可能会发现许多程序员不希望在可能的情况下使用它,而是使用条件if语句在循环中执行任何其他操作(因此,不执行它并干净地退出循环)
这样的事情可以实现你所期待的,而不必休息。
while(choice!=99) {
cin >> choice;
if (choice != 99) {
cin>>gNum;
}
}
答案 5 :(得分:2)
break
?
答案 6 :(得分:1)
while(choice!=99)
{
cin>>choice;
if (choice==99)
exit(0);
cin>>gNum;
}
相信我,那将退出循环。如果这不起作用,什么都不会。记住,这可能不是你想要的......
答案 7 :(得分:1)
是的,我很确定你只是把
break;
您想要退出的地方
喜欢
if (variable == 1)
{
//do something
}
else
{
//exit
break;
}
答案 8 :(得分:0)
尝试
break;
答案 9 :(得分:-1)
你永远不应该使用break语句来退出循环。 当然你可以做到,但这并不意味着你应该这样做。 这不是一个好的编程实践。 更优雅的退出方式如下:
while(choice!=99)
{
cin>>choice;
if (choice==99)
//exit here and don't get additional input
else
cin>>gNum;
}
如果选择是99,则没有其他事可做,循环终止。