Поскольку другие уже отвечают на этот вопрос, я хотел бы добавить следующее важное замечание:
Поскольку Ctrl-Z в Windows (и Ctrl-D в Unix-системах) приводит к достижению EOF, и вы выходите из while
, но вне цикла while
вы не можете прочитать дальнейшие входные данные, так как EOF уже достигнут.
Таким образом, чтобы снова включить чтение с использованием cin
, необходимо сбросить флаг eof
и все остальные флаги отказа, как показано ниже:
cin.clear();
После этого вы можетеначните читать ввод, используя cin
еще раз!