您好我正在尝试创建一个读取字符的程序,直到用户输入正确的两个字符序列(cs)来打开门。输入应该只有c后跟s和两个字符。我不知道我哪里错了!请帮忙。现在它允许访问,即使我输入一个单词!
int main()
{
char A;
int done = 0;
cout << "You have before you a closed door !" << endl;
cin >> A;
while (!done)
{
if (A='cs')
break;
else
cin >> A;
}
cout << "Congratulations ! The door has opened !" << endl;
return 0;
}
答案 0 :(得分:4)
'cs'
是一个多字符常量
并且A='cs'
是分配而不是比较,这也不是意图和不正确的
您应该使用std::string A;
并进行比较,如下所示
if( A == "cs" ) { }
答案 1 :(得分:0)
int main()
{
char A,B='cs';
cout << "You have before you a closed door !" << endl;
cin >> A;
while (1)
{
if (A==B)
break;
else
cin >> A;
}
cout << "Congratulations ! The door has opened !" << endl;
return 0;
}
你在多角色常数的比较中犯了错误。