PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C getch Eingabe von mehreren Buchstaben



KnechtRuprecht
19.06.2010, 09:59
Hey, ich lerne neu C und wollte wissen, wie man bei Eingabe=getch(); mehr als nur einen Buchstaben eingeben kann.
Der Syntax sieht wie folgt aus:

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main(int argc, char *argv[])
{
char Eingabe;

printf("getch() Eingabeaufforderung:\n");
Eingabe=getch();
printf("Deine Eingabe wurde nicht auf dem Bildschirm ausgegeben und \ndu musstest nicht Enter druecken. Deine Eingabe war: %c\n\n",Eingabe);

system("PAUSE");
return 0;
}

Wenn ich das Programm ausführe und hinter "getch() Eingabeaufforderung:"
meine Zahlen / Buchstaben eingeben will, bricht dies nach den 1. Buchstaben ab und gibt die Eingabe sofort aus. Wie kann ich das verhindern, also das ich mehrere Buchstaben bzw Zahlen eingeben kann?

Apex
19.06.2010, 10:02
Ich weiß jetzt nicht, wie du das gemacht hast. Für mich sieht das so aus, als hättest du getchar() vergessen. Und soweit ich weiß, gibt getche() das Echo aus.

Hab hier mal 'nen Post gefunden:

C/C++ Forum :: getch(), getche(), kbhit(), getchar() (http://www.c-plusplus.de/forum/viewtopic-var-t-is-39320.html)

blackberry
19.06.2010, 10:04
Wie beim letzten Mal gilt: LESEN LERNEN.
conio.h - Wikipedia, the free encyclopedia (http://en.wikipedia.org/wiki/Conio.h)

Reads a character directly from the console without buffer, and without echo.
(nicht "many characters")

Also: in eine Schleife packen, oder scanf, fgets, oder sowas in der Art benutzen.

/closed (siehe http://free-hack.com/466361-post7.html)