fstream eof



Автор Міша Віннічук задал вопрос в разделе Другие языки и технологии

c++ как выйти из бесконечного считывания? и получил лучший ответ

Ответ от Ra[гуру]
Нужно ввести специальный признак конца файла.
В Windows: Enter - комбинация клавиш Ctrl-Z - Enter
В терминале unix/Linux: комбинация клавиш Ctrl-D

Пример:

Программа, подсчитывающая количество нечетных чисел среди всех введенных:

#include <vector>
#include <iostream>

using namespace std;

int main() {
    int n, c = 0;
&nbsp; &nbsp; cout << "вводите числа:
";
&nbsp; &nbsp; while (cin >> n) if (n % 2) ++c;
&nbsp; &nbsp; cout << "среди введенных было " << c << " нечетных чисел
";
&nbsp; &nbsp; return 0;
}

<table><tr><td>fstream eof</td></tr></table>

Ответ от Ёерж[гуру]
break

Ответ от Jurijus Zaksas[гуру]
Измени условие цикла считывания, предусмотрев ситуацию окончания ввода (например, ввод какого-го определенного числа).

Ответ от Котейко[гуру]
Совсем неправильный подход. Используй лучше getch(), переводи в число, если число, если кнопка еsc, то выходи из программы. Число переводится просто - 48 - 0, 49 - 1 и т. д. или функцией strton(). Для того, чтобы завершился твой цикл X должен быть равен EOF. Признаком конца файла. Как это сделать - не знаю. И всего кода не видно. &gt;= не напишет mail.ru. Поэтому не пытайся. Замени другим понятным символом.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: c++ как выйти из бесконечного считывания?

C++ считать float числа из файла
Прочтет все числа из файла и выведет их на стандартный вывод (ограничение: чисел в файле должно
подробнее...
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*