Ncurses.wgetch - Eingabepuffer leeren
-
Hallo,
ich schreibe gerade ein Spiel mit Ncurses, wo ich
wtimeout(win, 0)
mache, damitwgetch()
nicht blockiert und sofort returnt. Wenn ich nun einige Sekunden die Space-Taste drücke, so bleibtwgetch()
ein bisschen "hängen". Und ich wollte fragen ob es hierzu eine Möglichkeit gibt, in meinem Spielchen jedes mal vorgetch()
den Eingabepuffer zu leeren.Folgendes funktioniert nicht:
chtype key; while((key = wgetch(win)) != '\n' && key != EOF);
Also, nicht, dass es nicht funktioniert, aber bei meinem Spiel war das nicht das Richtige. Damit mach ich den Input kaputt.
Weiß jemand wie ich das richtig lösen kann?
-
Ich kenn mich mit ncurses nicht aus, aber unter DOS (und NTVDM) würd ich
#include <conio.h> int main() { bool exit = false; do { if( kbhit() ) switch( getch() ) { case 'a': // ... break; case 'b': // ... case 0x1b: // [ESC] exit = true; break; } } } while( !exit ) }
machen.