从Yacc开始Lex的一个州

时间:2011-04-01 13:16:39

标签: c state yacc lex

在Lex中,我可以使用关键字BEGIN STATE1启动一个新状态。我希望在规则之间从yacc做同样的事情。在规则的操作部分中,如果我添加BEGIN STATE1,则表示BEGIN未声明的错误。我有什么方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:0)

Ise Wisteria为我找到答案。

在lex中创建使用BEGIN宏的单独函数。叫他们在野牛。

注意:对于像我这样的初学者,不要忘记在.y文件的开头添加这些函数的声明,否则在链接期间会出现未声明的错误。