Problema con getch() y kbhit()

El problema que tengo es que el programa no para pidiendo una pulsación de teclado cuando llega a kbhit(), si no que sigue su ejecución y sale del bucle...
El código es así,
do{
...
...
...
...
...
}while(!kbhit());
Me imagino que sera algo del buffer de teclado pero no se como vaciarlo porque e he usado fflush(stdin) y sigue igual..

2 Respuestas

Respuesta
-1
Utilizá la función getch().
Respuesta
1
Tu problema por lo que he podido entender viene por la mala la utilización que le estas dando a la función kbhit(). Esta función lo único que hace es devolver un valor positivo si hay algún carácter en el buffer de teclado, es decir, si en algún momento anterior se ha pulsado una tecla y 0, si no se ha pulsado ninguna tecla. *Esta función no detiene la ejecución del programa*.
Si quieres que al llegar al while t pida una tecla, usa la función getch() en su lugar.
Espero haberte solucionado tu problema. Si no es así no dudes en volver a consultarme.
Nos vemos
®Aguin ©

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas