в lex как заставить yyin указать на файл с основной функцией в yacc?
Я сохраняю аргументы, переданные main в yacc в файле. Теперь я хочу, чтобы lex считывал свои данные из этого файла, а не из терминала. Я знаю, что могу указать yyin на файл
как yyin = fopen("fn","r");
но это работает только тогда, когда main находится в lex. Когда я использую это объявление yyin в main в yacc, оно показывает ошибку, поэтому, пожалуйста, предложите что-то для преодоления этой проблемы.
1 ответов
вам, вероятно, просто нужно объявить
extern FILE * yyin;
Если это не решит проблему, пожалуйста, дайте сообщение об ошибке вы получили.