У меня есть программа на C, и я хочу предложить пользователю «нажать ввод, чтобы продолжить», но я продолжаю сталкиваться с необходимостью дважды нажать клавишу ввода.Я хочу обнаружить одно нажатие клавиши ввода.Я видел этот пост Чтение клавиши ввода в цикле в C и пытался
char prev = 0;
while(1)
{
printf("Press enter to continue \n");
char c = getchar();
if(c == '\n' && prev == c)
{
break;
}
prev = c;
}
, но это не сработало для меня, все равно придется дважды нажать клавишу ввода и дважды печатать подсказку,Тогда я просто попробовал
while (1) {
printf("press enter to continue \n");
char prompt;
prompt = getchar();
if(prompt == 0x0A){
break;
}
}
, но это все равно заставляет меня дважды нажать клавишу ввода, прежде чем двигаться дальше, хотя я получаю подсказку только один раз, так что она движется в правильном направлении.Любой совет о лучшем подходе?