Unbuntu下使用bison编写文本解释器的方法


         语法分析和词法分析很多时候作用不仅仅是高级语言。也可以是用于文本解释器,比如解析SQL 语法或者脚本语言等。从头实现词法和语法分析代价太大,可以借助工具,bison就是这样的一个工具。bison工具可以进行通过编写简单的文本规则和词法规则,然后生成程序进行自动解析。不仅解析效率高,扩展也非常容易。bison支持的平台包括Windows和Linux平台。


         Unbuntu下是使用bison的大体步骤如下。


         1)安装flex,执行命令 sudo apt-get install flex

         2)安装bison,执行命令 sudo apt-get install bison

         3)编写自己的词法分析规则文件,如parse.l文件(需要熟悉正则表达式,以及flex的一些规则,flex有相关文档说明)

         4)编写语法分析规则文件,如parse.y文件 (具体参考yacc的相关文档)

         5)编写Makefile文件,词法解析类似flex parse.l,即会生成词法解析的c文件。语法分析类似bison -d parse.y,生成语法分析的c文件。

         6)在工程中加入词法和语法分析生成的.h和.c文件。(加入的.c或者.h可能需要必要的代码调整,比如数据结构或者定义等,以便适应原有代码工程的运行环境,比如嵌入式等)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值