我为3种不同的格式文件解析编写3个.lex文件,生成扫描器c代码后,我需要将这3个文件构建到单个可执行文件中,但由于“yy_switch_to_buffer(...)的多重定义”而失败了'“,”'yytext'的多重定义“,......
如何解决这个问题?
答案 0 :(得分:0)
使用
%option prefix=“zz”
将默认函数替换为zz-prefixed宏。此外,自动工具中的ylwrap
似乎只处理名为lex.yy.c
的扫描程序 C 文件,因此也需要%option outfile=“lex.yy.c”
。