写在前面
因为自己在学习使用flex&bison编写编译器时,困难很大,网上的资料很老很陈旧,很多示例代码都无法运行。幸而自己最终找到一份07年的博客,所以想对其整理一下。一来加深自己的理解,为学弟学妹提供一份参考资料,二来也能防止原博客丢失。
flex是lex的加强版,同样bison也是yacc的加强版,lex和yacc的语法适用于flex和bison,之后的博客内容将不区分flex
和lex
,bison
和yacc。
本文所有的代码都在kali2019
运行测试过,没有linux基础的读者可以安装Ubuntu
系列linux,推荐ubuntu16和ubuntu18。