Récupérer un caractère lu au clavier ? [C] - Programmation
Marsh Posté le 30-12-2001 à 16:04:57
getchar dans stdio.h
Marsh Posté le 30-12-2001 à 16:08:44
Oui mais non...
getchar() à besoin que l'on termine la saisie par <ENTREE>, et ça me plait pas. Ce que je voudrais en fait c'est pouvoir déplacer un curseur en utilisant les flèches...
Mais merci quand même
Marsh Posté le 30-12-2001 à 16:22:24
man getch te dis quoi ?
Marsh Posté le 30-12-2001 à 16:25:02
Ca me dit d'inclure <curses.h> (ce que je fais), ça me dit plein d'autres trucs que je pige pas (daisolai), mais rien qui ressemble à ce que j'obtiens comme erreur quand je compile...
Marsh Posté le 30-12-2001 à 16:27:05
Ah... euh, je suis pas sûr de ça, mais je crois que conio.h c'est pour DOS (en tout cas quand j'essaie d'inclure ça, il me dit que ça existe pas)
Marsh Posté le 30-12-2001 à 16:33:58
max2048 a écrit a écrit : Ah... euh, je suis pas sûr de ça, mais je crois que conio.h c'est pour DOS (en tout cas quand j'essaie d'inclure ça, il me dit que ça existe pas) |
Oui conio.h C pour DOS donc y a pas sous linux.....
Marsh Posté le 30-12-2001 à 16:36:35
Bououououuuuuuuouuuuuuuuuuuuuuuuuuuuuuuh
cétropinjuste
Marsh Posté le 30-12-2001 à 16:41:10
curses c'est une lib a part.
Essaye d'ajouter -lncurses à l'édition des liens pour voir.
Et voit le manuel de curses ou un truc similaire sur le net, c'est très lourd mais très pratique quand même curses
Marsh Posté le 30-12-2001 à 16:46:08
ReplyMarsh Posté le 30-12-2001 à 19:15:05
je vais peu etre dire une grosse betise:
pourquoi ne pas faire simplement en read sur l'entre standard?
Marsh Posté le 30-12-2001 à 19:20:13
TAH a écrit a écrit : je vais peu etre dire une grosse betise: pourquoi ne pas faire simplement en read sur l'entre standard? |
G essayé (sous win....) et marche po bien.... (G pas trop cherché non + ... faut ptet un fflush à qq part...)
Marsh Posté le 30-12-2001 à 20:32:18
- Salut max, j'ai trouvé une réponse à ton pb...
- Ah, merci max, c'est quoi ?
- Bon alors, il faut inclure la librairie Curses et la linker en passant -lcurses en paramètre de gcc. Ensuite, il faut initialiser le tout avec initscr(). A la fin du programme, il faut "refermer" avec endwin(). Et voilà, c'est tout. Entre ces deux appels tu peux -entre autres- utiliser la fonction getch().
Voilà maxounette...
- Ah bah ça c'est cool. Merci tout le monde, et merci max.
Marsh Posté le 31-12-2001 à 04:03:18
sinon tu peux marcher par le principe des interuption
tu t'y connasi
car je ne les connais par coeur et faudrait que je cherche !!!!
la ya besoins de la lib <dos.h>
Marsh Posté le 31-12-2001 à 11:03:46
Sir Sigfrid a écrit a écrit : sinon tu peux marcher par le principe des interuption tu t'y connasi car je ne les connais par coeur et faudrait que je cherche !!!! la ya besoins de la lib <dos.h> |
dos.h sous nunux ça va être dur....
Marsh Posté le 31-12-2001 à 11:46:18
arf dommage masi je pense ikl doit y avoir un truc similaire pour nunux
Mais alors la pffffff
Marsh Posté le 31-12-2001 à 20:32:50
Je vous remercie mais c'est bon, j'ai trouvé (cf. plus haut). Et pis d'ailleurs si quelqu'un a des questions, qu'il hésite pas...
Bonne année
(oui je sais, c'est chiant, je fais comme tout le monde)
Marsh Posté le 30-12-2001 à 15:52:15
Alors voilà...
Je voudrais savoir comment récupérer un caractère tapé au clavier en C (un peu comme avec 'readkey' en Pascal). D'après ce que j'ai trouvé, il faudrait utiliser la fonction getch(), incluse dans le header <curses.h>
Seulement quand je compile ce programme...
#include <stdio.h>
#include <curses.h>
void main(void) {
int i = getch();
}
...la compilation s'arrête et j'obtiens ça :
/tmp/ccwEscuC.o: In function `main':
/tmp/ccwEscuC.o(.text+0x1559): undefined reference to `stdscr'
/tmp/ccwEscuC.o(.text+0x155e): undefined reference to `wgetch'
collect2: ld returned 1 exit status
Est-ce que j'ai oublié quelque chose ? Est-ce que ça vient de ma distro de Linux (Red Hat 7.2 Beta) ? Est-ce que je suis trop con et que je ferais mieux d'abandonner le C ?
[edtdd]--Message édité par max2048--[/edtdd]
---------------
Un site web qu'il est beau (v2.0)