#c
#c
Вопрос:
Поэтому я пытаюсь убедиться, что пользователь вводит только один символ. Например, если ввод «ab», код выдаст исключение.
char ch = ' '; std::cin gt;gt; ch; // I'm stuck here
Комментарии:
1. Введите строку и проверьте размер?
2. Введите целое
std::string
и проанализируйте его для извлечения значения и проверки.3. Кроме того, почему вы хотите создать исключение для кого-то, кто вводит длинный ввод? ИМО, это перебор. Просто назначьте первый символ введенной строки с каким-нибудь приглашением, в котором говорится, что вы берете только первый символ.
4. @PaulMcKenzie Я делаю это для школы, вот о чем они просили.
Ответ №1:
Вы можете ввести входные данные в целую строку и обработать только первый символ:
#include lt;stringgt; #include lt;iostreamgt; int main() { std::string input; std::cin gt;gt; input; char ch = ' '; if ( input.size() gt; 1 ) { // Entered more than 1 character } else ch = input[0]; }