[C] Interrupcion de teclado en C

Iniciado por JoseluCross, 2 Mayo 2016, 02:10 AM

0 Miembros y 1 Visitante están viendo este tema.

JoseluCross

Hola a todos, como parte de un trabajo de la universidad el profesor nos ha pedido hacer una sopa de letras, la sopa ya la hicimos pero ahora nos pide que se cierre si se pulsa Escape en cualquier momento. He estado probando con getchar() pero me obliga a pulsar retorno de carro y no me sirve. He leido que existe una funcion llamada getch() de conio.h pero ni el programa está en windows ni nos dejan usar librerias no estandar.

Agradecería mucho la ayuda ya que el profesor se niega a decirnoslo y me estoy volviendo un poco loco. No hace falta que me digan exactamente que hacer (tampoco os lo voy a impedir  :P), me basta con hacerme una idea de por donde van los tiros. Lo mas importante es que baste con el boton para cerrarse, sin tener que pulsar retorno de carro. No descarto la posibilidad que no se pueda a este nivel de C y el profesor lo haya hecho para que no podamos... en fin. Muchas gracias por su tiempo.
No hay problema sin solución, solo personas que no quieren resolverlo.

xiruko

Hola,

CitarNo descarto la posibilidad que no se pueda a este nivel de C y el profesor lo haya hecho para que no podamos...

Sí que se puede, y de hecho hay varias maneras de hacerlo. De momento se me ocurren dos:

La primera es usando la función GetAsyncKeyState.

La segunda es haciendo un hook global al teclado. Tienes un ejemplo aquí http://stackoverflow.com/questions/9149600/global-keyboard-hooks-in-c.

Ambas maneras están muy documentadas y encontrarás muchos ejemplos en Google.

Saludos!

class_OpenGL

Que yo sepa, la librería de Windows no es estándar xD

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL