podes hacerlo a la manera rapida con hilos, usando allegro.h y winalleg...
#include <windows.h>
#include <stdio.h>
#include <conio.h>
DWORD THREADID;
HANDLE HAND;
char letra;
DWORD WINAPI LeerTeclado(void* nul){
letra = getche();
printf("\nLetra : %c",letra);
}
int main(){
HAND = CreateThread(0,0,LeerTeclado,0,0,&THREADID); // creamos un hilo
Sleep(3000); // esperamos 3 segundos como maximo
TerminateThread(HAND,0); //ok, te quedaste sin tiempo, cortemos la entrada del teclado
printf("\n se termino el tiempo !");
fflush(stdin);
getchar();
return 0;
}
ya se que ese code esta medio feo, pero andaba apurado xDDDD (por eso no puse las libs de allegro y headers, para no perder tiempo xD)
ahi tenes un programa simple con un limite de tiempo, si tenes duda de alguna funcion, decime que te explico ^^
este tema que te mostre de hilos es crucial en los juegos, ya que hay que hacer varias cosas a la vez ..
yo siempre uso hilos en mis apps
en un juego que hice use hasta 6 hilos simultaneos...
un jueguito bastante completito xD
espero que te haya servido, cualquier cosa tenes mi mail/msn a disposicion
Au Revoir !