Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Умножения матрицы на число https://www.cyberforum.ru/cpp-beginners/thread1774670.html
Найти результат умножения матрицы A, размера M на N, на число K. Ввод с консоли, на первой строке вводится вещественное число K, на второй строке - целые числа M и N через пробел, следующие M...
C++ Ошибка: error LNK2019: ссылка на неразрешенный внешний символ...
Не могу понять ошибку в своей программе! Ничего красным не подчёркивается, но программа не запускается. В окне "Вывод" в разделе "Построение" пишет ошибку "1>games.obj : error LNK2019: ссылка на...
Неопределенность в абстракции C++
Добрый день. Есть класс A от которого производится класс В и С. У этих классов есть общий метод f1(). у класса B не должно быть метода f3(), а у С метода f2() что-бы работал...
C++ Последовательность из 5 слов Задача: Дана последовательность, содержащая до 5 слов, в каждом из которых до 5 строчных латинских букв; между соседними словами — не менее одного пробела, за последним словом — точка. Напечатать... https://www.cyberforum.ru/cpp-beginners/thread1774581.html
C++ Одномерный динамический массив. Хочу разобраться (понять) код программы https://www.cyberforum.ru/cpp-beginners/thread1774579.html
Вот такая вот задача: Написать прог-му которая для вещественного массива из (n) элементов определяет сумму элементов расположенный правее последнего отрицательного элемента. А вот непосредственно...
Упорядочить квадратную матрицу C++
Упорядочить (отсортировать матрицу), что бы было так: a11 <= a12 <=<= a1n <= a21 <= a22 <=<= a2n <=<= an1 <= an1 <=<= ann Плюсом отплачу ;)
Файл: Как сделать так, чтобы при запуске программы проверялось, существует ли файл? C++
Как сделать так, чтобы при запуске программы проверялось, существует ли файл. Если да, то он обнуляется, если нет, то создается?
C++ Order of evaluation Всем привет. Никак не могу побороть Order of evaluation. В статье на cppreference, приводятся примеры UB и уже на первом я застреваю и не понимаю почему именно так: If a side effect on a scalar... https://www.cyberforum.ru/cpp-beginners/thread1774499.html
C++ Функция , которая перезапускает проект https://www.cyberforum.ru/cpp-beginners/thread1774494.html
Подскажите есть команда или ф-Ия которая перезапускает проект заного Завершает текущий проект и открывает его заного Спасибо
C++ Использование стороннего контейнера Помогите из этого кода, сделать нормальную прогу #ifndef _GLIBCXX_ARRAY #define _GLIBCXX_ARRAY 1 #pragma GCC system_header #if __cplusplus < 201103L # include <bits/c++0x_warning.h> #else https://www.cyberforum.ru/cpp-beginners/thread1774493.html
shilko2013
253 / 230 / 185
Регистрация: 02.04.2016
Сообщений: 895
Завершенные тесты: 3
0

Обработка ошибок ввода из потока cin

02.07.2016, 14:29. Просмотров 1229. Ответов 2
Метки (Все метки)

Доброго времени суток всем!
Помогите пожалуйста разобраться.
После ввода буквы например, то есть когда поток ломается, пытаюсь его починить, но программа зацикливается и бесконечно пишет "Повторите ввод, что-то пошло не так!". Как починить?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
struct Point {
        int x, y;
    };
vector<Point> v(7);
for (int i = 0; i < 7; i++) {
        cout << i + 1 << "ая пара: ";
        cin >> v[i].x >> v[i].y;
        if (!cin) {
            cout << "Повторите ввод, что-то пошло не так!" << endl;
            cin.clear();
            cin.sync();
            i--;
        }
    }
Добавлено через 2 минуты
Спасибо всем разобрался.
Надо было буфер почистить.
C++
1
while (cin.get() != '\n');


Вернуться к обсуждению:
Обработка ошибок ввода из потока cin
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.07.2016, 14:29
Готовые ответы и решения:

Cin перестал читать из потока ввода
Возникла проблема при чтении из потока. Может кто знает, как решить эту проблему с cin? ...

Обработка ошибок cin (тип bool)
Доброго времени суток. Собственно, проблема. Надо поймать все ошибки при вводе в тип bool: буквы,...

Работа с cin при считывании с потока ввода
есть кусочек кода while (1) { string buf = name; cout &lt;&lt; &quot;Message : &quot;; string...

Использование потока cin для ввода символов
Вот первая функция, cin.get(ch) которую я не понимаю int main() { char ch; cin.get(ch);...

2
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.