Tastendruck abfangen unter Eclipse
-
Ah... ist viel kürzer und erfüllt denselben Zweck... Dankesehr.
Na ja nur in der EclipseKonsole geht es nicht. Wobei mir da noch nicht mal die erste print-Anweisung ausgegeben wird, ohne dass ich den Puffer zuvor leere mitsetbuf(stdout, NULL);
-
probier mal ein
system("PAUSE");
vor dem return 0; oder getchar() statt getch()
-
Hallo,
ich habe leider das gleiche Problem unter Eclispe:
Version: 3.4.1
MinGW-5.1.4.exeEinlesen mit getchar () funktioniert nicht wie gewünscht.
e.g.:cout << "Bitte eingeben: "; c= getchar (); cout << "DEB2";
Ich muss nun zuerst ein Zeichen eingeben und dann kommt erst der Konsolen output mit "Bitte eingeben: "
Wer kann mir da weiterhelfen?
lg
Franz
-
Besser entweder nur die C-IO-Funktionen verwenden, oder nur die IO-Streams von C++. Siehe aber auch: man: fflush.
-
Hi,
Hab da auch mal eine Frage zum Codesnippet mit `getch()`,
wie müsste man das erweitern um auszugeben, welches Zeichen der
Nutzer eingetippt hat?
Hab da noch nicht so den Durchblick, weil ich mich damit
noch nicht so lang beschäftigeMfG Jonas
-
talas schrieb:
Hab da auch mal eine Frage zum Codesnippet mit `getch()`,
wie müsste man das erweitern um auszugeben, welches Zeichen der
Nutzer eingetippt hat?for (;;) { int c = getch(); printf ("%d => %c\n", c, c); }
-
Dank dir schön ~fricky.
Jetzt muss ich es nur noch verstehen
Wenn es dir nicht als zu viel Aufwand
erscheint würde ich dich um eine kleine
Erklärung des Snippets bittenMfG Jonas
-
// endlosschleife, alles zwischen { und } wird immer wiederholt for (;;) { // der rückgabewert von 'getch()' wird in 'c' gespeichert // getch() wartet, bis eine taste gedrueckt wurde int c = getch(); // wir geben 'c' zwei mal aus. einmal als zahl und dann nochmal als zeichen printf ("%d => %c\n", c, c); }
-
Vielen Dank ~fricky
MfG Jonas
-
Danke auch für die Antwort.