c++ - 在 C++ 中退出 while (true) 循环
问题描述
这是我的简单while (true)
循环:
while (true)
{
int i = 0;
++i;
cout << i << endl;
if (i == 5) {
break;
}
}
}
所以break;
不是退出循环,输出是无限的1
。
解决方案
见此。_ _Why use a for loop instead of a while loop?
现在,来回答你的问题:
您正在循环的每次迭代中初始化i
变量while
。将定义i
移到 while 循环之外,以便可以更新它的值。
试试这个:
#include <iostream>
int main(void)
{
int i = 0;
while (true)
{
++i;
std::cout << i << std::endl;
if (i == 5)
break;
}
return 0;
}
输出:
1
2
3
4
5
建议:
您也可以使用for
循环,因为它更适合打印一系列数字。
#include <iostream>
int main(void)
{
for (int i = 1; i <= 5; i++)
std::cout << i << std::endl;
return 0;
}
推荐阅读
- c++ - Getch 不断输出相同的值
- javascript - 在 react.js 中搜索失败时如何返回错误消息
- c# - .wsdl 文件未导入,文件丢失?
- html - 我页面右侧的这个空间来自哪里?
- php - 我在我的 htaccess 文件中添加什么以防止 codeigniter 路由器将请求路由到目录中的页面
- javascript - 将对象显示为列表
- python - 我应该在模型中创建什么关系,以便一个用户只能为产品创建一个评论?
- cumulocity - Unprocessed SigFox Data _ Cumulocity
- oracle - Oracle DBMS_SCHEDULER 错误:ORA-27369。退出代码 7
- java - CrudRepository 通过自定义连接字段过滤器查找