Запуск двух веб-приложений на одном порту - неправильная маршрутизация

scanf("%d",&age);

Когда выполнение программы достигает указанной выше строки, вы вводите целое число и нажимаете клавишу ввода. Целое число занято scanf, а символ \n (символ новой строки или Enter), который вы нажали, остается в stdin, который занят getchar(). Чтобы избавиться от него, замените ваш scanf с

scanf("%d%*c",&age);

%*c сообщает %*c сканировать символ, а затем отбрасывает его. В вашем случае %*c читает символ новой строки и отбрасывает его.

] Другим способом было бы сбросить stdin, используя следующее после scanf в вашем коде:

while ( (c = getchar()) != '\n' && c != EOF );

Обратите внимание, что c является int в приведенной выше строке

0
задан TheDirtyJenks 26 June 2019 в 23:11
поделиться