C ++,检查输入值是否为特定字符

时间:2016-04-23 15:00:37

标签: c++ char

我有以下问题。我想读取用户的输入,它应该只有两个char R或B.如何正确工作while循环来控制用户只输入这两个字符而不是其他任何东西。如果错误则要求用户再次输入。非常感谢你。

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

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

1 个答案:

答案 0 :(得分:2)

您可以使用do-while

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

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

确保您的程序至少运行一次。在检查中,只需检查字母是否不是R而不是B,您就重复循环。