Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Einzelne Taste auslesen (mit C)?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
28.07.2003, 19:11 Uhr
bluefalcon



Hi,

Ich habe da ein Problem:
Ich suche einen Befehl, für C, mit dem ich ein einzelnes Zeichen von der Tastatur auslesen kann, ohne danach mit <return> bestätigen zu müssen.

Mit der Funktion "getch()" soll das ja funktionieren, aber da das kein standard ist "versteht" mein Compiler (gcc) das nicht, da dieser nur reinstes ANSI-C haben will.

Gibt es da noch andere Funktionen, bzw. Lösungswege, um das gleiche Ergebnis zu erziehlen?
Für Hilfe wäre ich sehr dankbar.

MfG
blueFalcon
--
There are only 10 types of people in the world: Those who understand binary code and those who don't.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
28.07.2003, 20:08 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


versuch getchar
die ist ansi

Gruss Heiko
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
28.07.2003, 20:51 Uhr
bluefalcon



Hmmmm....

Bei getchar() muss ich aber immer noch die Eingabe mit <ENTER> bestätigen.

Ich habe da eher an so was gedacht, wie den "readkey"-Befehl, aus TurboPascal oder so...

Jedenfalls funzt es so nicht:
a = getchar()

MfG
blueFalcon
--
There are only 10 types of people in the world: Those who understand binary code and those who don't.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
28.07.2003, 21:02 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


hast recht sorry,
dann fällt mir in rein ansi leider dazu auch nichts ein

Gruss Heiko
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
28.07.2003, 21:37 Uhr
bluefalcon



Ich hab für Linux ne' Lösung gefunden:


C++:
  system("stty raw -echo") ;
  test = getchar();
  system("stty -raw echo");



Bei mir funktioniert das wenigstens.
--
There are only 10 types of people in the world: Those who understand binary code and those who don't.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
28.07.2003, 21:49 Uhr
virtual
Sexiest Bit alive
(Operator)


Jau, aber ist nicht ANSI, ausserdem geht das noch einfacher über ncurses.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
28.07.2003, 21:58 Uhr
ao

(Operator)


ncurses ist auch nicht ANSI. Soweit ich weiß, geht das nicht in ANSI, nur systemspezifisch.

Aber seit wann versteht gcc keine Erweiterungen mehr? Wenn du die Compiler-Option --ansi-pedantic (oder so ähnlich) wegnimmst, sollte er weniger pingelig sein. Oder ist das Teil einer Aufgabe?

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
28.07.2003, 22:42 Uhr
bluefalcon



Ahh,

Jetzt hab ich's!
ich habe vergessen das "-lncurses" an den Compilierungsbefehl anzuhängen.

Jetzt kann ich auch ncourses laden!

Danke

MfG
blueFalcon
--
There are only 10 types of people in the world: Those who understand binary code and those who don't.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: