0

这是我编程的第一周,这个项目明天到期。这是代码的重要部分:

char Keep_going;
   
cout << "What would you like to do? 'M' for menu or 'Q' for quit \n" ;
cin >> Keep_going ;

if ( Keep_going == M )
{
cout << "Returning to menu \n" ;    
}

if ( Keep_going == Q )
{
choice = -1;    
}  


}while ( choice > 0 ) ;

system ("pause");
return 0;

我不断收到错误:

'M' 未在此范围内声明

'Q' 未在此范围内声明

有人可以帮我解决这个问题吗?

4

2 回答 2

1

符号 M 和 Q 将像变量一样查看 cpp 编译器。您想要更改为'M', 和'Q', 它们是文字字符。此外,比较时最好将常数放在左侧(以防您输入==错误=)

    char Keep_going;

    cout << "What would you like to do? 'M' for menu or 'Q' for quit \n" ;
    cin >> Keep_going ;

    if ( 'M' == Keep_going )
    {
    cout << "Returning to menu \n";
    }
    else if ( 'Q' == Keep_going )
    {
    choice = -1;    
    }  
}while ( (choice > 0) ) ;

system ("pause");
return 0;

祝你好运!

于 2013-10-19T00:16:57.913 回答
1

通过简单地使用不带引号的字母 Q 和 M,编译器将它们视为变量。简单地将 Q 和 M 用引号括起来应该可以解决您的问题。例如“Q”

于 2013-10-19T00:02:51.303 回答