死循环
由于循环在条件满足时会一直执行,因此我们在循环体中需要一直改变某些变量,使得循环最终是可以结束的。如果循环的条件永久满足,那么程序将会一直执行循环中的代码,导致计算资源的浪费,这种循环也叫做死循环。
死循环
#include<iostream>
using namespace std;
//死循环
int main()
{
for (int i = 0 ; i >= 0 ; i++)
{
cout << "输出数字:" << i << endl;
}
return 0;
}
这个例子就是一个死循环,在执行程序后,由于i>=0的条件永远满足,循环将会打印一直递增的数字,知道计算机的资源耗尽。
再循环中会经常需要递减计数器,这是有一个问题需要注意:
递减for语句的陷阱
#include<iostream>
using namespace std;
//递减for语句的陷阱
int main()
{
for unsigned i = 10 ; i >= 0 ; i--)
{
cout << " 输出数字:" << i <<endl;
}
return 0;
}
在写递增for循环的时候,经常会用unsigned int来做计数器,这是因为计数器一般从0 开始,用unsigned int显得语义明确;而如果我们在递减for循环中也这样用,程序就会陷入无限循环,这是因为 i在递减到 0 之后,再继续递减1就会向下溢出变成unsigned类型的上限。
本文若对您有帮助请点赞支持一下~