[C] Getch pendant 0.5sec
Résolu/Fermé
cs-bilou
Messages postés
769
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
24 février 2011
-
23 août 2009 à 18:55
cs-bilou Messages postés 769 Date d'inscription dimanche 2 décembre 2007 Statut Membre Dernière intervention 24 février 2011 - 24 août 2009 à 21:10
cs-bilou Messages postés 769 Date d'inscription dimanche 2 décembre 2007 Statut Membre Dernière intervention 24 février 2011 - 24 août 2009 à 21:10
3 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 835
23 août 2009 à 19:19
23 août 2009 à 19:19
Salut,
Utilise _kbhit ( https://www.microsoft.com/en-us/download/details.aspx?id=55984 ).
Cela te permettra de faire ta pause et ne bloquera pas ton programme.
Cdlt
Utilise _kbhit ( https://www.microsoft.com/en-us/download/details.aspx?id=55984 ).
Cela te permettra de faire ta pause et ne bloquera pas ton programme.
Cdlt
cs-bilou
Messages postés
769
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
24 février 2011
164
24 août 2009 à 14:30
24 août 2009 à 14:30
Super merci.
Alors voilà se que j'ai fait pour avoir un getch juste pendant environ 0.5sec.
Voilà merci encore pour ton aide.
Bilou.
Alors voilà se que j'ai fait pour avoir un getch juste pendant environ 0.5sec.
#include <conio.h> #include <stdio.h> int main(void) { int i = 0; long maxI = 50000; long touche; for (i=0 ; i < maxI ; i++) { while (kbhit() != 0) { touche = getch(); i = maxI++; } } if (touche == 2359208) printf("Aucunne touche détectée\n"); else printf("La touche est %c\n", touche); system("PAUSE"); }
Voilà merci encore pour ton aide.
Bilou.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 835
24 août 2009 à 21:02
24 août 2009 à 21:02
Pas super super ton code.
L'utilisation de clock serait beaucoup mieux :
Cdlt
L'utilisation de clock serait beaucoup mieux :
#include <stdio.h> #include <conio.h> #include <time.h> int main(void) { int c=-1; clock_t pause=clock()+0.5*CLOCKS_PER_SEC; while(clock()<pause) if(_kbhit()!=0){ c=_getch(); break; } if(c!=-1) printf("La touche est : %c\n",c); else puts("aucune touche détectée"); _getch(); return 0; }
Cdlt
cs-bilou
Messages postés
769
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
24 février 2011
164
24 août 2009 à 21:10
24 août 2009 à 21:10
Haa oui merci beaucoup fiddy.
Je vais regardre de plus prêt comment utiliser clock.
Bilou.
Je vais regardre de plus prêt comment utiliser clock.
Bilou.