problem mit yylex()
-
Habe folgendes Problem
ich will einen scanner schreiben der beim aufruf ein beliebiges file, das als argument übergeben wurde, scannt und das ergebnis in ein anderes file schreibt.
ich übergebe den filepointer meines files an yyin, rufe yylex() auf und will dann das ergebnis in das andere file kopieren.
FILE *yyinput; extern FILE *yyin; int main(int argc, char **argv) { char *filename; if(argc > 1) { yyin = fopen(argv[1], "r"); do { yyinput = fopen(filename, "w+"); int c; c = fgetc(yyin); ungetc(c, yyin); yylex(); fputc(c, yyinput); return yylex(); } while(!feof(yyin)); fclose(yyin); } else yyin = stdin; return yylex(); }
filename bleibt jedoch immer leer.
hat wer eine idee, woran das liegt?
bin für jede hilfe dankbar!!!<edit=kingruedi> sfds </edit>
-
Dieser Thread wurde von Moderator/in kingruedi aus dem Forum Linux/Unix in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Lese deinen Quelltext aufmerksam durch, lese ihn noch einmal.
Wo wird filename mit Daten versorgt?