本节书摘来自异步社区出版社《c++游戏编程入门(第4版)》一书中的第2章,第2.1节,作者:【美】michael dawson(道森),更多章节内容可以访问云栖社区“异步社区”公众号查看。
c++游戏编程入门(第4版)
像while循环一样,do循环也可以基于表达式重复执行部分代码。区别在于,do循环在每次循环迭代之后验证表达式。这意味着循环体总是至少要执行一次。下面给出do循环的一般形式:
// play again 2.0
// demonstrates do loops
using namespace std;
int main()
{
char again;
do
{
cout << "nplayed an exciting game";
cout << "ndo you want to play again? (y/n): ";
cin >> again;
} while (again == ’y’);
cout << "nokay, bye.";
return 0;
}<code>`</code>

程序在do循环开始前声明了char型变量again。然而,并不需要对它进行初始化,因为直到第一次循环结束才会对其进行验证。循环体为again从用户获取新的值。然后在循环表达式中验证again。如果again等于y,则重复循环;否则,循环终止。
陷阱
如果在玩游戏的过程中陷入了相同的没有尽头的循环,那么有可能是遇上了无限循环,即没有终点的循环。下面给出一个无限循环的简单例子: