Devi dichiarare la variabile yyin:
Ti posto il codice completo:codice:extern FILE *yyin;
fa parte(modificato in modo da accettare più file) dell'esempio che ho usato qui:codice:#include <stdio.h> extern int yyparse(void); extern FILE *yyin; void parse(char *filename) { yyin = fopen(filename, "r"); if (yyin == NULL) { fprintf(stderr,"Impossibile aprire il file: %s\n", filename); } else { if (yyparse() == 0) fprintf(stderr,"Parsing eseguito con successo!\n"); else fprintf(stderr,"Parsing fallito.\n"); } } int main(int argc, char **argv) { int k; if (argc<2) { fprintf(stderr,"uso: %s filename\n", argv[0]); return -1; } for ( k = 1; k < argc; k++ ) { printf("\nParsing del file %s:\n\n", argv[k]); parse(argv[k]); } return 0; }
http://forum.html.it/forum/showthrea...readid=1245150
![]()
Ciao

Rispondi quotando