Estoy aprendiendo C y estoy usando "getchar()" para detener las ventanas de comandos para que pueda ver los ejercicios que estoy haciendo, pero simplemente no funciona. Aquí está una muestra:¿Por qué no getchar() espera a que presione enter después de scanf()?
#include <stdio.h>
int main()
{
int value;
printf("1. option 1.\n2. option 2.\n3. option 3.\n4. Exit\n\nMake an option: ");
scanf("%d", &value);
switch (value)
{
case 1:
printf("you selected the option 1.");
break;
case 2:
printf("you selected the option 2.");
break;
case 3:
printf("you selected the option 3.");
break;
case 4:
printf("goodbye");
break;
default:
printf("thats not an option");
break;
}
getchar();
return 0;
}
esta es la salida:
- opción 1.
- opción 2.
- opción 3.
- Salir.
Hacer una opción: 1
ha seleccionado la opción 1.
Proceso devuelto 0 (0x0) el tiempo de ejecución: 3.453 s
Pulse cualquier tecla para continuar.
¿Por qué no espera la entrada de "getchar()"?
Ver http://stackoverflow.com/questions/1384073/problem-with-flushing-input-stream-c/1384089. –