Salve a tutti.
Io ho la necessità di fare un programma in cui devo ricevere un dato in input(char var), ad esempio con la funzione getch(), ma se non premo niente dopo un certo numero di secondi, devo fare in modo che la variabile var venga settata con un valore(ad esempio con il carattere 'a').

Vi allego il codice parzialmente funzionante (probabilmente ci sono righe che non servono o che potrebbero essere ottimizzate, ma è perchè sono un programmatore alle prime armi)

while(!kbhit())
{
do
{
_strtime(ora); //rilevo l'ora del sistema
sscanf(ora, "%d:%d:%d", &ore, &minuti, &sec);
if(sec!=30)
Sleep(970);
cout<<"\n sec: "<<sec;
}while(sec!=30);

press(a); //premo virtualmente il carattere 'a' della tastiera con una libreria msdn
}
var = getche();
cout<<"\n var: "<<var<<"\n ";

Con questo codice, quando gli do in input un carattere, il programma attende ovviamente che la variabile dei secondi sia arrivata a 30 prima di darmi il valore di var. Questo perchè ho messo il getch() dopo il ciclo while. Io ho la necessità che la variabile mi sia data appena premo un carattere, se premo un carattere, mentre se non lo premo voglio che mi sia data quando la variabile dei secondi è uguale a 30(ovvero ogni minuto). Forse non esiste soluzione, ma io ci provo lo stesso e mi appello a voi.
Grazie in anticipo per le eventuali risposte.