Hvis du blot vil vente på en hvilken som helst tast er dette løsningen:
char c = getch();
getch() skulle være standard ANSI C, så det må også virke under Linux. Normalt hedder header filen conio.h eller stdio.h, men i C++ Builder hedder den underligt nok condefs.h. Jeg vil foreslå dig at søge gennem dine header-filen efter \'getch\' for at finde ud af hvad den hedder i din Linux compiler. (Norton TS som kører under DOS kan vel også køres under Linux eller ???)
Lige præcis dette problem har været diskuteret før, og dengang fandt vi vist ingen løsning.... getch() findes ikke på Linux, og det gør kbhit heller ikke!
lbs >> Måske misforstod du mit svar ?!?! Det ER \'getch\' du søger efter ikke sandt ?!? conio er jo bare navnet på den header fil i NOGLE compilere hvori getch funktionen ligger !!! I f.eks. C++ Builder er der flere af header-filerne som hedder .hpp
Husk at keyboard returnerer alle funktionstasterne F1 - F12 som 2 karakterer. Den første er [ESC]. Den anden må du lave et lille program og teste dig frem til, da jeg ikke kan huske dem.
Altså vil tast på F2 medfører at keyboard returnerer [ESC][EN ANDEN KARAKTER].
Det gælder i øvrigt ikke kun for F1 - F12. Også andre speciel taster tilhører denne gruppe. Specialtaster der ikke findes på det gode gamle standardtastatur 102 kan dog godt give forskellig returværdi alt efter hvilket keyboard man anvender. Det ser man f.eks. på bærbare computere.
Skal man anvende den type karakterer, skal man være meget omhyggelig med at teste før release. Helst på både stationære og bærbare computere.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.