为使用 yacc 命令生成的解析器打开调试方式
您可以通过调用带有 -t 选项的 yacc 命令或者编译带有 -DYYDEBUG 的 y.tab.c 文件来访问调试代码。
对于正常操作, yydebug 外部整数变量设置为 0。 但是,如果将其设置为非零值,那么解析器将生成其接收的输入令牌的描述以及在解析输入流时对每个令牌执行的操作。
用下面的一种方法设置此变量:
- 将下面的 C 语言语句放在 yacc 语法文件的声明部分:
int yydebug = 1; - 使用 dbx 程序执行最终解析器,并使用 dbx 命令将变量设为 ON 或者 OFF。