2016-04-23 85 views
-2

我有以下问题。我想读取用户的输入,该输入应该只有两个字符R或B.如何在while循环中正确工作以控制用户只输入这两个字符,而不是其他字符。如果它错了,再次询问用户输入。非常感谢你。C++,检查输入值是否是特定字符

cout<< "Enter R or B: "; 
     cin >> letter; 

     while(cin.fail()) { 
         cin.clear(); 
} 

回答

2

你可以使用do-while

do { 
    cin.clear(); 
    cout<< "Enter R or B: "; 
    cin >> letter; 

} while (letter != 'R' && letter != 'B'); 

这就确保了你的程序将至少运行一次。在检查中,只需检查该字母是否不是R,也不是B,则重复该循环。