【发布时间】:2013-11-21 20:52:45
【问题描述】:
我写了一个布尔函数again()来提示用户重新运行程序,但是对于用户输入的任何答案,无论如何程序都会重新运行。
bool again()
{
//Local variable
char answer;
cout<<"Would you like to re-run? (Y/N) ";
cin>>answer;
cin.ignore(100,'\n');
if(answer == 'Y' || 'y')
{
return true;
}
if(answer == 'N' || 'n')
{
return false;
}
}
...
do
{
menu(gameamount,response);
if (response == 1)
{
inputs(gameamount, game_count);
writeout(gameamount);
}
if (response == 2)
{
outputs(gameamount, game_count);
}
}while(again());
return 0;
}
我尝试使用 else 和 else if 并在第一个 if 语句之后返回 false 但这仍然不起作用,我不能将代码块放在 main 中以节省空间,所以我必须创建一个布尔函数来询问用户重新运行程序。
【问题讨论】:
标签: c++ return-value main boolean-logic