【发布时间】:2022-01-03 01:52:30
【问题描述】:
我对如何从 yacc 程序打印 LALR(1) 解析表一无所知。我知道,在幕后,yacc 将语法转换为解析表,以及其他额外的 C 代码。
我想在控制台上打印状态以及操作(移位、减少和接受),类似于 image。我想出了this。程序打印Valid,如果它遵循语法规则,否则打印Invalid declaration。
【问题讨论】:
-
您是在尝试回答家庭作业问题,还是在寻找可以为任意语法生成紧凑解析器跟踪的工具?
-
@rici 不是作业问题,而是我必须提交的小项目。不用担心,我可以用 trace 管理它,并删除额外的文本。