Bonjour,

voilà je dois créer un jeu et pour cela j'ai à detecter l'enfoncement de touches du clavier.

je ne veut pas faire de scanf car il faut que le programme continue de tourner.

j'ai trouvé ce code dans la FAQ qui à l'air de bien correspondre à ce que je cherche mais j'avoue avoir quelques soucis pour l'utiliser

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include <conio.h>
 
int main(void)
{
   int touche;
 
   for (;;)
   {
      touche = -1;   /* pas de touche */
 
      if (kbhit())
      {
         /* Si présence d'une touche... */
         touche = getch() ;    /* ... la lire */
         if (touche == 0)
         {
            /* Si touche double code... */
            touche = getch() ;  /* ... la lire */
 
            switch(touche)      /* ... et effectuer le traitement */
            {
               case FLG:     /* Fleche Gauche (0x4B) */
                 // Traîtement
                 break ;
               case FLD:     /* Fleche Droite (0x4D) */
                 // Traîtement
                 break ;
               case FLH:     /* Fleche Haute (0x48) */
                 // Traîtement
                 break ;
               case FLB:     /* Fleche Basse (0x50) */
                 // Traîtement
                 break ;
            } ;
         }
         else
         {
            if (c == ESC)  /* test de sortie */
               break;
 
            switch(touche)
            {
               case '1' :
                  // Traîtement
                  break ;
               case '2' :
                  // Traîtement
                  break ;
               case '3' :
                  // Traîtement
                  break ;
            } ;
         }
      }
      /* Ici votre programme... */
   }
   return 0;
}
premièrement en faisant un simple copier coller et en compilant j'ai plusieurs erreurs.
il me dit qu'il ne connait pas FLG dans la ligne " case FLG: " ce qui est normal... je suppose donc que j'ai à remplacer par " case :0x4B " ? (oui/non?)
de meme pour les autres touches.


ensuite cette ligne là :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
if (c == ESC)  /* test de sortie */
c'est par exemple si l'utilisateur veut quitter le programme on detecter s'il enfonce la touche esc? (je dois donc aussi remplacer ESC par son code comme pour les fleches je suppose?)

enfin que fait cette ligne?

c'est une boucle for infinie?

voilà déjà les réponses à ces premieres questions m'eclaiciront bien (et je reviendrais avec d'autres )

merci d'avance.