РЕДАКТИРОВАТЬ: обратите внимание, в приведенном ниже примере я покажу вам, "как обнаружить EOF". Как указал @Billy, вы, вероятно, захотите использовать good()
вместо eof()
для обнаружения любого условия ошибки или eof. Я включил информацию об этом в конце своего ответа, но это важно, поэтому я добавляю эту заметку вверху, чтобы она была понятной.
(оригинальный ответ следует)
Вы хотите это:
string input;
while( !cin.eof() ) {
getline(cin, input);
}
с использованием operator!
на iostream
проверяет только, произошел ли сбой или другое состояние ошибки. ИОС :: оператор! () .
Вы можете использовать good()
вместо !eof()
для проверки любого из условий eof
, badbit
или failbit
. ИОС :: хорошо () .