Bonjour à tous,

me voila devant un nouveau problème alors je fais appel à vous =)
Il y a quelque temps je suis passé sous Linux et je sais que certaines fonctions ne marchent pas.

Je n'arrive pas à faire une attente de caractère comme je le faisais sous Windows avec getch();

Je me suis renseigné (vous inquiètez pas ) et sous Linux il y a soit getc(); ou la macro getchar(); je les ai essayer toutes les 2 et ca ne marche pas... J'ai aussi essayer avec scanf() et je ne sais pas pourquoi il ne s'arrete pas, ca doit etre a cause de mon code.

Je ne vais pas poster mon code, mais un meme exemple simplifié :

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
 
 
include...
 
void aide(void);
 
int main(void){
char c;
scanf("%c",&c);
switch(c){
 
              case ('a'):
                    aide();
                    break;
              case ('q' || 'Q'):// <=== Erreur de compilation sous cette forme /probleme 2\
                     quit();
                     break;
              default:
                     printf("erreur");
                     getchar() // ou getc(); ou scanf <=== Problème 1 ne s'arrete pas
 
              }
}
 
void aide(void){
 
            ... // Affichage de l'aide avec des printf
 
getchar() // ou getc ou encore un scanf <========= Ne s'arrete pas /Problème 1\
 
}
Merci de votre aide.