std::cin - einzelnes zeichen einlesen
-
In wie weit ist es mit std::cin oder anderen C++-Hausmitteln möglich, einzelne Zeichen als Eingabe abzufangen oder ist das plattformabhängig?
Es soll also nicht gewartet werden, bis die Eingabe explizit via ENTER/"\n" an stdin gesendet wird, sondern vielmehr direkt nach Eingabe eines beliebigen Zeichens ohne Umschweife mit der Auswertung des jeweils eingegebenen Zeichens begonnen werden.
Vergleichbares Verhalten ist in jedem Media-Player (z.B. mplayer im Kommandozeilenmodus) zu finden: Jemand drückt SPACE und der entsprechende PLAY-PAUSE-TRIGGER wird ausgelöst, unabhängig von "\n" oder anderen Endzeichen.
cin.get() wirkt hier ebenfalls nur bei erfolgreichem "Absenden" via ENTER aus dem Terminal heraus.
Unter Windows gibt es afaik getch(), welches - soweit ich sehe - das von mir gewünschte Verhalten bereitstellt - unter Linux scheint es etwas vergleichbares nicht zu geben, oder?
mfg Uwe
-
Ich sehe gerade, dass das selbe Problem erst vor kurzem in ähnlicher Weise behandelt wurde, http://www.c-plusplus.net/forum/viewtopic-var-t-is-180510.html .
Komisch, dass die Suchfunktion den entsprechenden Threda nicht ausgespuckt hat.