我是一名初学者,我正在尝试使用while循环来完成一项任务,以便计算有多少张门票通过大门,以及如何记录它的颜色。我以为我编码正确,但然后我得到运行时错误,并试图单个每个错误,然后逐个1得到它的工作,但我甚至不能让我的while循环不只触发用户放入任何东西。任何帮助将不胜感激,我完全失去了,我知道这是非常初学者。为什么我的while循环无论我输入什么都会触发?
#include <iostream>
using namespace std;
int main()
{
char answer;
cout << "start counting tickets? (y/n)" << endl;
cin >> answer;
while (answer = 'y')
{
cout << "ok" << endl;
cin >> answer;
}
return 0;
}
你可能是指'while(answer =='y')'。留意你的编译器警告。如果它没有警告你,升级你的编译器。 – WhiZTiM
while(answer ='y')表示将“y”赋值给变量“answer”。 “答案”的值是非零的,这就是为什么它是真实的。因为ascii表中'y'的数值不是零。 – Michael
所以我应该把什么呢? – xburdg