Usereingabe per Datei
Usereingabe per Datei
Wenn ich per fgets eine Usereingabe einlese, kann ich diese auch per Datei übergeben? Also nicht per argv[]!
hi,
wenn du fgets(eingabe, sizeof(eingabe), stdin) meinst, geht's so:
dann verbindet die Shell stdin von deinem Programm mit der Datei.
wenn du fgets(eingabe, sizeof(eingabe), stdin) meinst, geht's so:
Code: Alles auswählen
cat user_eingabe_datei | mein_programm
Beware of programmers who carry screwdrivers.
Mit "mein_program < meine_datei" kannst du deine Datei auch direkt über "stdin" einlesen, ohne eine Pipe benutzen zu müssen:
Gruß
gms
Code: Alles auswählen
gms@gms2 ~ $ vi x.c
gms@gms2 ~ $ cat x.c
#include <stdio.h>
int main() {
char buf[1024];
while (fgets(buf,sizeof(buf),stdin)) {
fputs(buf,stdout);
}
}
gms@gms2 ~ $ gcc -o x x.c
gms@gms2 ~ $ echo bla | ./x
bla
gms@gms2 ~ $ echo bla >x.txt
gms@gms2 ~ $ ./x <x.txt
bla
gms@gms2 ~
gms