Aguarde pressionar enter em C dentro de um loop while?
Estou escrevendo um programa em C e preciso aguardar que o usuário pressione qualquer tecla para continuar. Quando eu usogetchar();
espera peloEntrar tecla a ser pressionada. Mas quando eu uso dentro de umwhile
loop, não funciona. Como posso fazer meu código esperar que qualquer tecla seja pressionada para continuar o loop?
Aqui está o meu exemplo de código. Estou usando o GNU / Linux.
#include <stdio.h>
#include<stdlib.h>
int main()
{
int choice;
while(1) {
printf("1.Create Train\n");
printf("2.Display Train\n");
printf("3.Insert Bogie into Train\n");
printf("4.Remove Bogie from Train\n");
printf("5.Search Bogie into Train\n");
printf("6.Reverse the Train\n");
printf("7.Exit");
printf("\nEnter Your choice : ");
fflush(stdin);
scanf("%d",&choice);
switch(choice)
{
case 1:
printf("Train Created.");
break;
case 2:
printf("Train Displayed.");
break;
case 7:
exit(1);
default:
printf("Invalid Input!!!\n");
}
printf("Press [Enter] key to continue.\n");
getchar();
}
return 0;
}