Parsing 如何使解析函数接收字符串作为关于lex和yacc的参数?
我想编写一个解析器,提供类似于Parsing 如何使解析函数接收字符串作为关于lex和yacc的参数?,parsing,bison,yacc,lex,Parsing,Bison,Yacc,Lex,我想编写一个解析器,提供类似于const char*convertA2B(const char*input)的API。它看起来像: lex_和_yacc(输入)->myADT myADT.intepret()->ouptut 在yacc中,有intyyparse(void),它似乎依赖于yyin变量。 没有这些神奇的全局变量,有没有办法直接解析字符串?yyprase不直接使用yyin,它只调用yylex来获取令牌。生成令牌的输入完全取决于lexer 默认情况下,lex或flex生成的lexer将
const char*convertA2B(const char*input)
的API。它看起来像:
intyyparse(void)
,它似乎依赖于yyin
变量。
没有这些神奇的全局变量,有没有办法直接解析字符串?
yyprase
不直接使用yyin
,它只调用yylex
来获取令牌。生成令牌的输入完全取决于lexer
默认情况下,lex或flex生成的lexer将从yyin
读取,但您可以使用从字符串读取