Не работает fflush(stdin) в Visual Studio
Как заставить работать функцию fflush(stdin) в Visual Studio 2017/2015/2013/2010
До поры до времени для того чтобы чистить поток использовалась функция fflush(stdin).
Что произойдет если мы попытаемся ввести char не очищая поток:
Второй scanf пропускается не запрашивая ввода с клавиатуры.
Тогда попробуем очистить поток с помощью функции fflush(stdin) :
Опять же второй scanf пропускается.
Для корректной очистки потока вместо fflush(stdin) используем конструкцию:
while (getchar() != '\n');
Вот что у нас получилось:
Теперь поток очищается и второй scanf не пропускается.
Видео по теме: