Zeichen direkt einlesen?
-
Hallo gibt es eine Funktion mit der ich ein Zeichen direkt ohne Bestätigung mit der Returntaste einlesen kann?
-
In Ansi C nicht, aber in Systembibliotheken wie conio (man: getch()).
-
Warum ist sowas nicht in ANSI C? C wird doch oft für Hardwarezeugs verwendet. Da gibts doch viele Automaten die keine Entertaste haben.
-
Weil C möglichst unabhängig von der drunterliegenden Hardware sein soll - da wird die Eingabe nur über das "FILE* stdin;" vorgesehen und das System kümmert sich dann darum, wie die Daten dort reinkommen.
(es gibt auch Systeme und Konstellationen, bei denen stdin NICHT einmal mit der Tastatur verbunden ist ;))
-
hämbürger schrieb:
Warum ist sowas nicht in ANSI C? C wird doch oft für Hardwarezeugs verwendet. Da gibts doch viele Automaten die keine Entertaste haben.
dort werden dann eigene I/O funktionen benutzt und kein 'fgets' oder sowas.
ursprünglich kommt C von UNIX und da ist alles eine datei, deshalb verhält sich die standard-i/o von C so merkwürdig (FILE*-orientiert).