Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Como leer una entrada del teclado sin detener la ejecucion

Estas en el tema de Como leer una entrada del teclado sin detener la ejecucion en el foro de C/C++ en Foros del Web. Pues aqui voy, soy nuevo en el foro Estoy haciendo un programa para un proyecto, y en dicho programa tengo un ciclo que necesito que ...
  #1 (permalink)  
Antiguo 24/01/2007, 15:16
 
Fecha de Ingreso: enero-2007
Mensajes: 5
Antigüedad: 17 años, 3 meses
Puntos: 0
Como leer una entrada del teclado sin detener la ejecucion

Pues aqui voy, soy nuevo en el foro

Estoy haciendo un programa para un proyecto, y en dicho programa tengo un ciclo que necesito que se ejecute sin interrupcion alguna, a la hora de leer una entrada del teclado pero si pongo cualquier funcion como getch o cin o cout o cualquiera el programa se espera a que la entrada del teclado sea leida, y ahi esta el problema, hay alguna forma de leer la entrada sin que se detenga el ciclo? Alguien Sabe?

Cualquier Respuesta la Agradezco de ante mano, Gracias
  #2 (permalink)  
Antiguo 24/01/2007, 16:17
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
Re: Como leer una entrada del teclado sin detener la ejecucion

Con la winapi, o lo que siempre uso, allegro o SDL. Puedes leer el estado del teclado facilmente sin que se quede parado como el getchar o cosas asi.

Saludos
  #3 (permalink)  
Antiguo 27/01/2007, 20:12
 
Fecha de Ingreso: enero-2007
Mensajes: 5
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: Como leer una entrada del teclado sin detener la ejecucion

Bien Gracias por tu respuesta Instru

Creo que eligiré allegro pero ya intente y sucede que necesito usarla en "Turbo C++ 3.0" (cosas de proyectos escolares) y no puedo usarla, alguna idea??
  #4 (permalink)  
Antiguo 27/01/2007, 20:30
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
Re: Como leer una entrada del teclado sin detener la ejecucion

Huy, para turbo C++. No se si exista la posibilidad de compilarla manualmente para que sea compatible con turbo C++. O si el linker del turbo C++ acepte archivos .lib o .a. Tendrias que ver como son enlazadas las librerias estandar.
Y despues si son .a es como si usaras gcc, si son .lib junto con dlls pues entonces son como las de visual C++.

Saludos
  #5 (permalink)  
Antiguo 28/01/2007, 13:28
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Re: Como leer una entrada del teclado sin detener la ejecucion

Podes usar kbhit ... una pena que todavia hagan usar estas porquerias a la gente.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #6 (permalink)  
Antiguo 28/01/2007, 17:45
 
Fecha de Ingreso: enero-2007
Mensajes: 5
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: Como leer una entrada del teclado sin detener la ejecucion

ya intente usar kbhit() pero el problema con esta es que si su valor de retorno cambia de 0 a 1 ya no puede cambiar de 1 a 0 alguna otra idea?
  #7 (permalink)  
Antiguo 29/01/2007, 12:11
 
Fecha de Ingreso: enero-2007
Mensajes: 5
Antigüedad: 17 años, 3 meses
Puntos: 0
De acuerdo Re: Como leer una entrada del teclado sin detener la ejecucion

Bien pues como ven hallé la solucion, por si les interesa, ahh y gracias por su interes a todos los que me contestaron.
Pues la solucion consiste en usar un inport() e igualarlo a una variable para almacenar el numero de retorno del.... teclado! como ven pues el el # de puerto del teclado para los ps2 es 60 y pues hasta ahora no me ha dado problemas, hice un programa de prueba para saber cual es el numero que me retorna cada tecla, y ya no se detiene la ejecucion que era el principal problema. Que les parece
  #8 (permalink)  
Antiguo 29/01/2007, 12:28
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Re: Como leer una entrada del teclado sin detener la ejecucion

Me parece que solo funcionara en 9x y no funcionara con teclados USB.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #9 (permalink)  
Antiguo 30/01/2007, 11:56
 
Fecha de Ingreso: enero-2007
Mensajes: 5
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: Como leer una entrada del teclado sin detener la ejecucion

Pues de hecho lo probé en el WXP con el turbo C++ 3.0 instalado y funciona bien, y si claro que no funciona en los teclados usb
  #10 (permalink)  
Antiguo 30/01/2007, 12:20
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Re: Como leer una entrada del teclado sin detener la ejecucion

Si, error mio en eso, al ser un programa de 16 bits es emulado y por eso funciona.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #11 (permalink)  
Antiguo 27/03/2007, 13:54
Avatar de Hazek  
Fecha de Ingreso: julio-2002
Ubicación: En mi casa :D ó ?
Mensajes: 418
Antigüedad: 21 años, 9 meses
Puntos: 3
Re: Como leer una entrada del teclado sin detener la ejecucion

Cita:
Iniciado por ZainZeus Ver Mensaje
Pues de hecho lo probé en el WXP con el turbo C++ 3.0 instalado y funciona bien, y si claro que no funciona en los teclados usb
Dos preguntas:

1.Funciona sin problemas con el teclado de una laptop?
2. Puedo compilarlo con Borland C++ 5.5.1?

Es que trato de compilarlo usando inport() y marca error por la funcion, no de sintaxis si no de que no puede encontrarla , segun yo busque y usa la libreria DOS.H pero no me funciona, no tendras un ejemplo que puedas mostrarme?
__________________
Tecnologias: Flash Platform, Java (Spring, HB, Struts, Grails), iOS, Android, JavaScript, PHP, SQL (MySQL, Oracle), Prolog, Assembler (PIC's) y Arduino - Electronica.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:05.