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

Ошибки потоков - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Библиотека <algorithm> в [c++] http://www.cyberforum.ru/cpp-beginners/thread181767.html
Библиотека <algorithm> в как она работает? если можно то с примерами.
C++ вычислениесумма ряда Вычисление текущих значений Y(x) и S(x) (где x принадлежит диапазону ) реализовать в виде отдельных функций. При выполнении задания продемонстрировать следующие способы передачи аргументов в вызываемые функции: по значению, указателю и ссылке. В основной функции организовать ввод исходных данных, обращение к функциям и вывод результатов в виде таблицы. Работу программы проверить для a=0,1;... http://www.cyberforum.ru/cpp-beginners/thread181760.html
Найти числа, делящиеся на каждую из своих цифр C++
1!. Написать программу, которая на заданном отрезке натурального ряда чисел находит: 1. все простые числа; 2. все близнецы; 3. все совершенные числа; 4. все палиндромы; 5. числа, делящиеся на каждую из своих цифр; (12, 24, 36)
Найти число пар соседних элементов массива C++
Дан двумерный массив. Найти число пар соседних элементов. В качестве соседних элементов расссматривать 1 только элементы расположенные в одной строке 2 только элементы расположенные в одном столбце 3 элементы расположенные в одной строке и в одном столбце Свой вариант решения не кидаю, ибо там у меня сплошная путаница((( Добавлено через 54 минуты #include <iostream>
C++ Символ в число http://www.cyberforum.ru/cpp-beginners/thread181731.html
есть масив символов: njd6gr7ds3 нужно присвоить значение 6 переменной типа инт как это сделать? char mas = {'n', 'p', '7', 'Q'}; int digit;
C++ Удаление из строк В символьной строке удалить все слова состоящие из нечётного количества букв. подробнее

Показать сообщение отдельно
LineStown
 Аватар для LineStown
63 / 63 / 3
Регистрация: 04.08.2010
Сообщений: 399
27.10.2010, 10:29     Ошибки потоков
День добрый.
Проблема с определением ошибки ввода потока
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
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
    setlocale(LC_ALL,"Russian");
    int a;
    while(true)
    {
        cout << "Input:";
        cin >> a;
        if(cin.good())
        {
            cin.clear();
            cout << "Correct" << endl;
            cin.ignore(10,'\n');
        }
        else
        {
            cin.clear();
            cout << "Not correct" << endl;
            cin.ignore(15,'\n');
        }
    }
    return EXIT_SUCCESS;
}
Суть: программа проверяет: если введено число - то правильно, иначе ошибка.
Но строку типа "2e2" - программа определяет как верное число.
Может я, конечно, не правильно понял значение cin.good()\
Хотелось бы услышать ваше мнение

Добавлено через 21 час 24 минуты
Мдя, не понятно, как работает флаг ошибки потока
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru