Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить лежат ли точки А и В по одну сторону от прямой https://www.cyberforum.ru/ cpp-beginners/ thread2384943.html
Даны четыре вещественных числа x, y, x1, y1, представляющие собой координаты точек А и В. Плоскость разделяется надвое прямой x = y. Написать программу , определяющую лежат ли точки А и В по одну...
Определение особых случаев двойственного симплекс метода C++
Здравствуйте, у меня есть задание, точнее курсовая. Нужно написать программу, которая решает задачи двойственным симплексом, на исходные данные наложены ограничения, Ц.Ф должна быть направлена на...
C++ Считывание из файла в односвязный список и действия с ним
Дана задача: из файла считываются данные в односвязный список. Список должен быть динамическим и каждый член которого должен быть структурой содержащей: Оригинальное название фильма (string);...
C++ Выбрасывается исключение при вводе названия фирмы Добрый день! В моей программе неправильно работает ввод названия фирмы, и я не совсем понимаю,как мне потом выводить данные,если их будет много. Я к тому,что нужно записать по крайней мере две... https://www.cyberforum.ru/ cpp-beginners/ thread2384935.html
C++ Вычислить значение функции заданной разложением в ряд Тейлора https://www.cyberforum.ru/ cpp-beginners/ thread2384934.html
Помогите, пожалуйста, решить задание. Для х Є с точностью до 4 знака найти
Почему выводится 0 в C++17? C++
#include <iostream> using namespace std; int main() { int i = 256; int j = reinterpret_cast<char&>(i); cout << j << endl; }
C++ Вывод счастливых билетов (полезные свойства функции sprintf)
Здравствуйте, уважаемые форумчане! С наступившим всех Рождеством! Просто хотел немного поделиться своим опытом использования функции sprintf(). Во первых, она позволяет не только выводить, но и...
C++ Вывести на экран таблицу значений функции Помогите пожалуйста с задачей. Вывести на экран таблицу значений функции y(x) для x, изменяющегося от a = 0,1 до b = 1,2 с шагом h = 0,1 Нашел похожую задачу, но не получается прописать свою... https://www.cyberforum.ru/ cpp-beginners/ thread2384909.html
C++ Ошибка "Function call with parameters that may be unsafe" https://www.cyberforum.ru/ cpp-beginners/ thread2384879.html
Помогите решить в чем проблема. Запускаю код и появляется ошибка // ConsoleApplication15.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include <iostream>...
C++ Имитация клика по определенным координатам экрана при нажатии определенной кнопки Как осуществить "клик мышкой" по определенным координатам экрана X Y при нажатии на определенную клавишу, например, ctrl? https://www.cyberforum.ru/ cpp-beginners/ thread2384842.html
252 / 170 / 116
Регистрация: 30.04.2017
Сообщений: 375
Записей в блоге: 1
08.01.2019, 11:09 0

Проблемы со сбросом потока cin.clear()

08.01.2019, 11:09. Просмотров 536. Ответов 3
Метки (Все метки)

Ответ

Как вариант. Про сброс потока почитайте по ссылкам яндекса "сбросить буфер потока cin", есть варианты использования cin.ignore(INT_MAX) вместо fflush(stdin).
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
 
using namespace std;
int main()
{
    long long cur = 0;
    long long sum = 0;
    while ( true ) {
        cin >> cur;
        if(cin.fail()) {
            cin.clear();   // удаление флага ошибки 
            fflush(stdin); // удаление всех символов из буфера ввода
            cout <<  "BOOOOOM" << endl;
            continue;
        }
        if ((-200000000 > cur) or (200000000 < cur)) {
            cout << "Error" << endl;
            exit(0);
        }
        if(cur == 0) {
            break;
        }
        sum+=cur;
        cout << sum << "----------" << endl;
        cin.ignore (1, ',');
    }
    cout << sum << endl;
    return 0;
}


Вернуться к обсуждению:
Проблемы со сбросом потока cin.clear()
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.01.2019, 11:09

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Cin.clear cin.ignore
Как использовать cin.clear и cin.ignore?

Cin.clear() не работает?
Почему cin.clear() не работает как надо? ( не очищает поток ). Если мы вводим например 3 значения...

cin.get() и cin.clear()
В общем, занимаюсь по видео-урокам на ютубе, дошли до темы &quot;массивы&quot;. Суть программы - вывести...

Не очищается поток после cin.clear()
Собственно есть программа записывающая данные в файл и считывающая их оттудова со всеми...

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