Форум программистов, компьютерный форум CyberForum.ru

cin остаток после ввода - C++

Восстановить пароль Регистрация
 
karl 777
0 / 0 / 0
Регистрация: 29.06.2013
Сообщений: 58
03.10.2013, 12:06     cin остаток после ввода #1
C++
1
2
3
4
int b1=0;
int b2=0;
cout<<"Введите b1 и b2: ";
cin>>b1>>b2;
Вопрос такой, если мы введем: 1 2 3, то считается 1 и 2, но как определить, что ввели более 2-ух нужных чисел и сообщить об ошибке?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2013, 12:06     cin остаток после ввода
Посмотрите здесь:

После cin неработает gets C++
C++ scanf,cin разбор ввода данных
C++ ошибка потокового ввода cin
C++ функция ввода вместо cin
C++ Отслеживание ввода данных в потоке cin
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Algoritmer
 Аватар для Algoritmer
155 / 95 / 13
Регистрация: 07.03.2013
Сообщений: 477
Записей в блоге: 1
03.10.2013, 12:09     cin остаток после ввода #2
Считываем всю строку:
C++
1
2
char s[255];
cin.getline(s,254);
И парсим её по разделителю (разделитель пробел)
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
03.10.2013, 12:14     cin остаток после ввода #3
не знаю как проверить, но можно удалить все что осталось во входной очереди
C++
1
while (cin.get() != '\n') ;
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
03.10.2013, 12:56     cin остаток после ввода #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    int b1 = 0;
    int b2 = 0;
 
    do
    {
        cout << "Введите b1 и b2: ";
        cin >> b1 >> b2;
    
        if (!cin || cin.peek() != '\n')
        {
            cin.clear();
            while (cin.get() != '\n');
            cout << "Error!" << endl;
        }
        else break;
    
    } while (true);
Yandex
Объявления
03.10.2013, 12:56     cin остаток после ввода
Ответ Создать тему
Опции темы

Текущее время: 11:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru