所以我很好奇为什么会发生这种情况。
int main()
{
bool answer = true;
while(answer)
{
cout << "\nInput?\n";
cin >> answer;
}
return 0;
}
预期行为:0 - 退出程序,1 - 再次提示,除 1 之外的任何非零整数 - 再次提示
实际行为:0 - 符合预期,1 - 符合预期,除 1 之外的任何非零整数 - 无限循环
来自http://www.learncpp.com/cpp-tutorial/26-boolean-values/
One additional note: when converting integers to booleans,
the integer zero resolves to boolean false,
whereas non-zero integers all resolve to true.
为什么程序会进入无限循环?