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

Флаг eofbit в потоке и условные операторы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Доступ к закрытым членам базового класса http://www.cyberforum.ru/cpp-beginners/thread922408.html
помогите понять что я не так сделал ? #include <iostream> using namespace std; class A { int PrA1; public: int PuA1;
C++ mem_fun и mem_fun_ref Здорова! Есть задачка : "Реализуйте и протестируйте четыре функции mem_fun() и mem_fun_ref() (параграф 18.4.4.2)." Ну там наверно ошиблись не 4 а две функции да пусть две функции будет. Ну и как же... http://www.cyberforum.ru/cpp-beginners/thread922401.html
C++ С чего начать?
Я уже давно заинтересован в программировании и хочу заняться самообучением. Но не знаю с чего начать, какой язык программирования стоит выбрать для начала? Какие книги стоит приобрести?
Чтение из двух файлов и запись в один C++
Помогите с одной задачей. У меня есть два файла: 1. "oldmast.dat" в котором 4 поля: номер счета клиента, фимилия, имя и баланс; 2. "trans.dat" где 2 поля: номер счета клиента и вносимая сумма; И...
C++ Расставить на доске N ферзей так, чтобы они не били друг друга http://www.cyberforum.ru/cpp-beginners/thread922352.html
смысл в том чтобы расставить на шахматной доске размером N*N, N ферзей так, чтобы они не били друг друна. пыиался сделать что то методом перебора, но программа зависает. где здесь может быть ошибка?...
C++ Прочитать все записи, номер которых кратен 5 и вывести их не экран. задан файл неопределённой длины, прочитать все записи, номер которых кратен 5 и вывести их не экран. подробнее

Показать сообщение отдельно
Olivеr
412 / 408 / 13
Регистрация: 06.10.2011
Сообщений: 831
13.07.2013, 06:35
Цитата Сообщение от lss Посмотреть сообщение
То есть, этот код, по-вашему, должен выдать true?
Попробуйте запустить такой код. Введите, например, 1234 5325 Ctrl + Z.
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
 
int main()
{
    int x;
    while (std::cin >> x);
    std::boolalpha(std::cout);
    std::cout << "badbit " << std::cin.bad() << endl
         << "failbit or badbit " << std::cin.fail() << endl
         << "eofbit " << std::cin.eof() << endl;
    return 0;
}
Цитата Сообщение от lss Посмотреть сообщение
Пишется, что взвращает true, если нет ошибок в потоке. Если проверяет все флаги, то для него утановленный eofbit - это ошибка в потоке. Тогда как же это:
Я считаю, что eofbit - не признак ошибки потока.
Как конец потока регламентирует стандарт - я не знаю.

Добавлено через 1 минуту
http://www.cplusplus.com/reference/ios/ios/eof/
bool eof() const;
Check whether eofbit is set
Returns true if the eofbit error state flag is set for the stream.

Значит принимают за ошибку потока. Вы правы.

Прикрепил скриншот из стандарта.
1
Миниатюры
Флаг eofbit в потоке и условные операторы  
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru