Newsgroup: it.comp.lang.c++
Titolo: Gestire i tasti freccia con getch()

Come faccio a gestire i caratteri freccia usando getch() di conio.h?
Kaos.


Questo programma ti dice quale tasto freccia premi... se non capisci
qualcosa kiedimelo pure...
Ciao
void main()
{
int i=0;
char tasto;
do {
  tasto=getch();
  if (tasto==72) cout <<"UP\n";
  if (tasto==80) cout <<"DOWN\n";
  if (tasto==75) cout <<"LEFT\n";
  if (tasto==77) cout <<"RIGHT\n";
  i++;
} while (i<100);
}
--
--------------------------------------------------
Carlo Camarda
chiamac...@tiscalinet.it
]@#[ Anna I Love You ]#@[

qualcosa kiedimelo pure...
mettiamo il caso che sulla sua macchina quei numeri non
siano identici che sulla tua? :)
--
Lawrence Oluyede
rhy...@myself.com

 }
MLO 3 $ g++ -ansi -Wall -o foo foo.cxx
foo.cxx:2: `main' must return `int'
foo.cxx:2: return type for `main' changed to `int'
foo.cxx: In function `int main(...)':
foo.cxx:6: `getch' undeclared (first use this function)
foo.cxx:6: (Each undeclared identifier is reported only once for each function 
   it appears in.)
foo.cxx:7: `cout' undeclared (first use this function)
MLO 4 $
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Dept. of Physics, Univ. of Padova, Italy          loreti at pd dot infn dot it

 ha scritto nel messaggio
news:r9khaukqk00qav7dh...@4ax.com...

Non ho idea di cosa abbia scritto nella precedente email ma visto ke ho
ricopiato spiaccicatamente dal mio libro di sistemi informatici (SISTEMI DI
ELABORAZIONE E TRASMISSIONE DELLE INFORMAZIONI di Alessandro Memo)
evidentemente sarà esatto per cui...
In ogni caso credo siano universali...
Ciao


In ogni caso credo siano universali...
ah ah quel libro lo usavo anche io in terza... non è molto
affidabile...e se non erro non abbraccia molto lo standard
--
Lawrence Oluyede
rhy...@myself.com

 ha scritto nel messaggio
news:lg8jau4nn84653747...@4ax.com...

Anche il prof lo dice sempre... ma di sicuro ne sa più di me... in ogni caso
il mio non era un discorso ke reggeva ma essendo scopiazzato...


 Come faccio a gestire i caratteri freccia usando getch() di conio.h?
Guarda, questo l'ho scritto per avere una specie di tabella ascii sempre
pronta:
#include <iostream.h>
#include <conio.h>
int main()
{
  char key;
  cout << "Premi un tasto per vedere i codici ascii o gli scancodes\n\n";
  for (;;)
  {
    if (!kbhit())
    {
      if (key = getch()) cout << "ascii: " << (int)key << '\n';
      else cout << "scancode: " << (int)getch() << '\n';
    }
  }
}
Non vorrei sbagliarmi, ma il programma scritto da Carletto non dovrebbe
funzionare in quanto i tasti freccia non sono ascii, ma scan codes, quindi,
prima del codice, restituiscono 0. Se becchi zero richiami la getch() e ti
prendi l'intero. Li dovrebbe andare bene quello che ha scritto Carletto.
Spero di non aver detto cose errate.
Luca Carlon

A dire il vero non funziona... Sapresti dirmi come fare a controllare la
tastiera senza interrompere l'esecuzione del programma? Mi serve per
iniziare a programmare qualche giochino. Grazie.
Kaos.

Hai dimenticato:
#include <iostream.h>
#include <conio.h>
In ogni caso non funziona. Avrei bisogno di una istruzione o di un costrutto
nello stile kbhit(), cioe' un'istruzione che legge la tastiera senza
"interrompere" l'esecuzione del programma. Grazie comunque.
