Twitter und Facebook-Anbindung
X
Tweet Follow @twitterapi
!!! Anbindung an twitter und facebook öffnen !!!

Wenn Ihnen mein Online-Buch gefällt,
dann bedanken Sie sich doch mit einer kleinen Spende...

2.6 Eingaben mit getch und getche

2.6 Eingaben mit getch und getche

Bisher musste der Benutzer immer ENTER drücken, um seine Eingabe zu bestätigen. Dies muss aber nicht sein, denn es gibt auch Funktionen, welche sofort auf einen Tastendruck reagieren. Um dies zu realisieren, gibt es in der Bibliothek "conio.u" zum einen die Funktion "getch", welche versteckte Eingaben macht (z.B. für Passwortabfragen oder kleine Spiele ganz nützlich, wie Sie gleich sehen werden) und "getche", welche die Eingabe auf der Console ausgibt. Allerdings läuft es mit diesen Funktionen etwas anders, als bisher. Zum einen übergibt man ihnen keine Referenz auf eine Variable, sondern die Funktionen liefert einen Tastencode zurück und zum anderen ist dieser Code ein Integer und kein Zeichen. Dies ist aber nicht weiter schlimm, da Sie ja wissen, wie man Variablen ineinander Konvertiert.

Des Weiteren sei noch erwähnt, dass nicht alle Tasten auf ihrer Tastatur gleichberechtigt sind. Es gibt Zeichen-Tasten (a-z, 1-0 usw.), Steuerungs-Tasten (Strg, Alt, Tab usw.) und Sondertasten (F1-F12, Bild hoch/runter, Einfg, Entf usw.). Die zwei Funktionen reagieren nur auf die Zeichen-Tasten und die Sondertasten, wobei die Sondertasten durch zwei Zeichen dargestellt werden. Die einzige Ausnahme ist die Steuertaste ENTER, welche dem ASCII-Code 10 entspricht.

Folgendes Beispiel zeigt, wie man so lange wartet, bis der Benutzer eine Taste drückt

 1
 2
 3
 4
 5
 6
 7
 8
 9
					
#include <conio.h>

// ...

printf("Bitte Taste druecken, um fortzufahren!\n");
fflush(stdin);
getch();

// ...
					

Mit dieser Methode finden Sie auch ganz einfach heraus, welcher Tastencode zu welchem Buchstabe passt. Ein Testprogramm könnte wie folgt aussehen.

 1
 2
 3
 4
					
printf("Der Code zu Taste ");
fflush(stdin);
int iEingabe = getche();
printf(" lautet %i\n", iEingabe);
					

Wie Sie sehen konnten, ist es auch hier notwendig, vorher den Tastaturpuffer zu leeren, da noch ein Steuerzeichen enthalten sein könnte.

Zum Seitenanfang
Zum Inhaltsverzeichnis

© Copyright by Thomas Weiß, 2009 - 2012