0 / 0 / 0
Регистрация: 28.05.2014
Сообщений: 7
|
||||||
1 | ||||||
Ifstream и eof в нем28.05.2014, 21:15. Показов 11326. Ответов 9
Метки нет (Все метки)
Имеется код:
на выходном функция записывает: б л а б л а б л а 1 2 3 3 1 вопрос: что стало с пробелами? 2 вопрос: почему последний элемент функция вывела дважды?
0
|
28.05.2014, 21:15 | |
Ответы с готовыми решениями:
9
Нюансы условий достижения EOF в ifstream Дан текстовый файл. Вывести количество содержащихся в нем символов и строк (маркеры концов строк EOLN и конца файла EOF при подсчете количества символ Различия ifstream::get() и ifstream::get(ch) Дан текст. Напечатать все имеющиеся в нем цифры. Определить количество цифр в нем. |
Модератор
13678 / 10888 / 6465
Регистрация: 18.12.2011
Сообщений: 29,051
|
|
28.05.2014, 21:21 | 2 |
1.
вводит одну букву пропуская пробельные символы.
Если хотите читать все буквы, то используйте abc=fin.get(); 2. последнее чтение было чтением конца файла. Оно не изменило содержимое ввода, вот оно и повторяется дважды.
0
|
0 / 0 / 0
Регистрация: 28.05.2014
Сообщений: 7
|
|||||||||||
28.05.2014, 21:24 [ТС] | 3 | ||||||||||
Объясните если не сложно как работает
и как избежать записи лишнего элемента?
0
|
7803 / 6567 / 2988
Регистрация: 14.04.2014
Сообщений: 28,706
|
|
28.05.2014, 21:33 | 4 |
eof() возвращает флаг конца файла. Флаг устанавливается функциями чтения, если они в процессе выборки символов доходят до конца.
0
|
0 / 0 / 0
Регистрация: 28.05.2014
Сообщений: 7
|
|
28.05.2014, 21:35 [ТС] | 5 |
Спасибо большое. Вроде понял
0
|
7803 / 6567 / 2988
Регистрация: 14.04.2014
Сообщений: 28,706
|
|
28.05.2014, 21:37 | 6 |
Проверяй fail() после 10-й строки. Этот флаг должен выставляться, если ничего прочитать не удалось.
0
|
Модератор
13678 / 10888 / 6465
Регистрация: 18.12.2011
Сообщений: 29,051
|
||||||
28.05.2014, 21:51 | 7 | |||||
Проще делать так
0
|
0 / 0 / 0
Регистрация: 28.05.2014
Сообщений: 7
|
|
28.05.2014, 21:52 [ТС] | 8 |
он пробелы пропустит так. спасибо я уже разобрался
0
|
7803 / 6567 / 2988
Регистрация: 14.04.2014
Сообщений: 28,706
|
|
28.05.2014, 22:22 | 9 |
zss, а как это поможет? Экстрактор возвращает ссылку на поток. Или у меня документация какая-то другая?
0
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|
28.05.2014, 22:28 | 10 |
nmcf, std::istream имеет operator bool (C++11) или operator void* (C++03), благодаря которому в условных инструкциях можно не делать явную проверку на fail и bad биты. http://www.cplusplus.com/refer... ator_bool/
0
|
28.05.2014, 22:28 | |
28.05.2014, 22:28 | |
Помогаю со студенческими работами здесь
10
EOF ifstream Eof \n \0 EOF Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |