有没有办法让 Yacc/Bison 打印出它对它处理的输入所做的所有缩减?这将是一个很好的调试帮助。我已经试过了
| Item1 { printf("Item1: %s\n", yytext); }
仅打印最后一个字符和
| Item1 { printf("Item1: %s\n", $$); }
导致格式参数不是来自编译器的指针警告。我做错了吗?
我能够通过以下方式启用调试输出
放入#define YYDEBUG 1
我的 C 声明
放入int yydebug = 1;
额外的 C 代码部分
如需额外阅读,请查看使用 YYDEBUG 生成调试信息、调试您的解析器和此 yacc 示例。