(DOS und Win...) Noobie Frage Tastatureingabe Erzwingen
-
Hallo erstmal an alle !!!
Erstmal will ich nur sagen das ich ein absoluter Noob in sachen C++ bin aber ich bin dabei das zu ändern.Ich wollte mal fragen wie ich es erreichen kann das ich bestimmte zeichen bei der Tastatureingabe erzwingen kann, also es geht um folgendes ich habe eine eingabe wenn ich z.B den Buchstaben 's' eingebe dann startet er zum beispiel die funktion start(). Nun ist ja das Problem das wenn der nutzer z.b 'b' eingibt das da nixs aufgerufen wird ich habe mir da erst mal mit einer do-while anweisung geholfen der halt überprüft ob das zeichen ein 's' ist und wenn nicht sagt er das und erwartet einen neue eingabe. Aber es gibt doch sicherlich eine Möglichkeit das er nur das Zeichen 's' akzeptiert also gebe ich 's' in die Tastatur ein gebt er das auch auf den Bildschirm aus gebe ich aber z.B 'b' ein macht er gar nixs also zeigt das zeichen net an quasi als wenns das zeichen net gibt. Könnt ihr mir da eventuell weiterhelfen???
Mfg Fox
-
Eine Möglichkeit in C:
#include <conio.h> // wegen getch() und getche() #include <stdio.h> // wegen printf(...) int main() { char zeichen; for(int i=0;;i++) { zeichen = getch(); // ohne Echo if(zeichen=='s') break; } printf("s wurde gedrueckt.\n"); return 0; }
[ Dieser Beitrag wurde am 03.07.2003 um 19:58 Uhr von Erhard Henkes editiert. ]
-
Versuch doch mal, das nach C++ zu transferieren.
-
Jo cool ich danke dir!!!!!!!!!!
-
Du meinst es an C++ anzupassen?? Da brauchte ich nicht das geht auch so. Ich habe halt nur das "printf" durch "cout" ersetzt. Muss mann ja eigentlich auch nicht machen aber ich habe es so gelernt!!
Mfg Fox
-
Original erstellt von Erhard Henkes:
**Eine Möglichkeit in C:#include <conio.h> // wegen getch() und getche() #include <stdio.h> // wegen printf(...) int main() { char zeichen; for(int i=0;;i++) { zeichen = getch(); // ohne Echo if(zeichen=='s') break; } printf("s wurde gedrueckt.\n"); return 0; }
[ Dieser Beitrag wurde am 03.07.2003 um 19:58 Uhr von [qb]Erhard Henkes** editiert. ][/QB]
Wozu bitte eine for-Schleife? Ein einfaches while(1) { ... } tuts doch auch!
-
Erstens wollte ich ihm etwas zum Nachdenken geben. Zweitens wird man sicher nicht in alle Ewigkeiten Zeicheneingaben abfragen wollen, dann kann man auf i abfragen und >1000 o.ä. abbrechen.
-
Hallo,
wobei weder C noch C++ <conio.h> oder getch() kennen. Insofern bist du im Konsolenforum besser aufgehoben.