@Jek_Rock
Java developer

Cin как определить конец потока?

Есть такая программа:
string n;
while (cin >> n) {
    cout << n;
}


Необходимо считывать поток(все кроме пробельных символов) и выводить на экран. Как организовать выход из цикла, если в потоке будут только пробельные символы?
  • Вопрос задан
  • 14053 просмотра
Решения вопроса 1
если в потоке только пробельные символы cin >> n их просто проигнорирует, и если дойдет до конца потока, то cin >> n будет интерпретировано как false, собственно, выход и так случится. Мне кажется, что вы не всю проблему рассказали...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Можно поймать конец строки:
string n;
do
{ 
     cin >> n; 
    cout << n;
}while(cin.peek() != '\n'))


Но не конец консольного потока. С файловым потоком дела обстоят иначе, там есть метод eof().
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы