版权声明:欢迎转载 请注明出处 https://blog.csdn.net/weixin_44850440/article/details/91458880
当我们的文法设计的有问题的时候,就需要开启bison的调试方式来检测文法错在哪里,那么如何开启bison的调试方式呢?
bison调式需要做的事情如下:
1 )在语法文件*.y定义段开启yydebug,最终如下:
%{ #include <string.h> #include <stdlib.h> #include <stdio.h> int yydebug=1; %}
命令如下:
bison a.y -d -v --debug
-d是用来生成头文件的,与调试无关。
-v生成output文件,描述了我们创建的自动机,可以帮助我们分析调试内容。
3)编译目标代码,如下:
gcc -o test lex.yy.c a.tab.c -lfl -ly
4)运行test
5)结合程序输出信息和output文件的内容,可以知道我们设计的语法错在哪里。
文章来源: https://blog.csdn.net/weixin_44850440/article/details/91458880