Salut tout le monde![]()
Qu'elle est l'�quivalent de readkey (de Pascal) en C ?
C'est � dire la fonction qui lit un et un seul caract�re (sans avoir besoin de cliquer sur retour chariot)
Merci![]()
Salut tout le monde![]()
Qu'elle est l'�quivalent de readkey (de Pascal) en C ?
C'est � dire la fonction qui lit un et un seul caract�re (sans avoir besoin de cliquer sur retour chariot)
Merci![]()
Il n'y en a pas de standard je crois.
Si t'es sous Windows, regarde dans <conio> la fonction getch().
La r�ponse se trouve dans la FAQ je pense.
Nas'
D�sol�, j'ai d�j� essay� getch(), getchar() et ca ne marche pas;
ca n�c�ssite un retour chariot pour valider la lecture.
Sachant que j'utilise Bloodshed Dev-C++ version 4
Pour getchar(), c'est normal, elle est bufferis�e donc tu dois utiliser le retour pour valider.
Mais pour getch(), ce n'est pas normal. Elle envoie directement le caract�re.
Je pense que le probl�me vient de la version de <conio.c> livr�e avec DevC++. Ce n'est pas la "bonne" car j'avais aussi ce probl�me.
Essaye avec ce Devpack de mettre cette version :
http://www.ece.fr:8000/%7Elavoillo/c/Conio/Conio.DevPak
Nas'
Merci Nasky
vous aviez raison pour le getch, j'ai compil� le programme ds Turbo C et elle a march� m�me si le lien que tu m'a donn� ne marche pas.
Mais en ce qui concerne ce que tu m'a dit tout � l'heure concernant la comparaison du caract�re avec '\n' sorry ca ne donne pas de r�sultat ni ds Dev C++ ni ds Turbo C
j'ai fais comme tu l'a dis :
et ca affiche 0
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8 e=0; c=getch(); if (c =='\n') /* c etant declaré char */ { e=1; } printf("%d",e);
J'ignore si on re�oit le \n avec getch().
Ce qui est s�r par contre, c'est qu'on re�oit le \r.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Normal, tu es en mode 'raw' avec getch() Le caract�re retourn� est '\r' (PC/DOS/Windows) et non '\n'. Quand on s'�carte de la norme, il faut s'attendre � des surprises...Envoy� par elmessoussi
TOASTED!
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4 int c; <...> if (c =='\r')
Partager