标签: c yacc lex flex-lexer
我将传递给yacc中main的参数存储在一个文件中。现在我希望lex从这个文件而不是终端读取它的输入。我知道我可以将yyin指向一个文件 像yyin = fopen("fn","r");一样,但这只适用于主要在lex中。当我在yacc的main中使用这个yyin声明时,它会显示错误,所以请提出一些建议来解决这个问题。
yyin = fopen("fn","r");
答案 0 :(得分:24)
您可能只需要声明
extern FILE * yyin;
如果这不能解决问题,请提供您收到的错误消息。