flex与bison(中文版)

flex与bison(中文版)
作 者: 利文
出版社: 东南大学出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: LINUX
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  Jobn Levine,Taughannock Networks的创始人,著有20余本技术书籍,其中包括《lex&yacc》和《qmail》,均为O’Reilly出版。

内容简介

如果你需要分析或处理linux或unix中的文本数据,这本有用的书籍就讲解了如何使用flex和bison迅速解决问题。《flex与bison》被期待已久,是经典o'reilly系列书籍《lex& yacc》的续篇。在原书出版以来的近20年,flex和bison已被证明比原来的unix工具更可靠、更强大。《flex与bison》一书涵盖了linux和unix程序开发中相同的重要核心功能,以及一些重要的新主题。你会找到适用于新手的修订教程和适用于高级用户的参考资料,以及对每个程序的基本用法的解释,并且运用它们创建简单、独立的应用程序。有了《flex与bison》,你会发现这些灵活的工具提供的广泛用途。

图书目录

前言 

第1章 flex和bison简介 

 词法分析和语法分析 

 正则表达式和词法分析 

 文法与语法分析 

 二义性文法:并不多见 

 添加更多的规则 

 flex和bison与手写的词法分析器和语法分析器的对比 

 练习 

第2章 使用flex 

 正则表达式 

 flex词法分析器中的文件i/o操作 

 读取多个文件 

 flex词法分析器的i/o结构 

 起始状态和嵌套输入文件 

 符号表和重要语汇索引生成器 

 c语言交叉引用 

 练习 

第3章 使用bison 

 bison语法分析器如何匹配输入 

 移进/归约分析 

 bison语法分析器 

 基于抽象语法树的改进的计算器 

 移进/归约冲突和操作符优先级 

 一个高级计算器 

 使用高级计算器 

 练习 

第4章 分析sql 

 sql概述 

 关系操作 

 使用sql的三种方法 

 从sql到逆波兰式(rpn) 

 词法分析器 

 语法分析器 

 sql分析器的makefile 

 练习 

第5章fiex规范参考 

 flex结构规范 

 begin 

 c++词法分析器 

 上下文相关性 

 定义(替换) 

 echo 

 输入管理 

 flex库 

 交互模式和批处理模式的词法分析器- 

 行号和yylineno 

 文字块 

 单一程序中的多重词法分析器 

 编译词法分析器的选项 

 flex词法分析器的可移植性 

 可重入词法分析器 

 正则表达式语法 

 reject 

 从yylex()返回值 

 起始状态 

 unput() 

 yyinput()yyunput()- 

 yyleng 

 yyless() 

 yylex()和yy decl 

 yymore() 

 yyrestart() 

 yy_scan_string和yy_scan_buffer 

 yy_user action 

 yywrap() 

第6章 bison规范参考 

 bison语法结构

 二义性和冲突 

 bison程序的问题 

 c++语法分析器 

 %code块 

 结束标记 

 错误记号和错误恢复 

 继承属性($0) 

 词法反馈 

 文字块 

 文字记号 

 位置 

 %parse-param 

 bison语法分析器的可移植性 

 优先级和结合性声明 

 递归规则 

 规则 

 特殊字符 

 %start声明 

 符号值 

 记号 

 可变语法和多重语法 

 多重语法分析器 

 y.output文件 

 bison库文件 

 yyabort 

 yyaccept 

 yybackup 

 yyclearin 

 yydebug和yydebug 

 yyerror 

 yyerror() 

 yyparse() 

 yyrecovering() 

第7章 二义性和冲突 

 指针模型和冲突 

 冲突类型 

 语法分析器状态 

 name.output的内容 

 归约/归约冲突 

 移进/归约冲突 

 复习name.output中的冲突 

 常见的冲突例子 

 if/then/else 

 你如何解决冲突? 

 if/then/else(移进/归约冲突) 

 嵌套循环(移进/归约;中突) 

 表达式优先级(移进/归约冲突) 

 总结 

 练习 

第8章 错误报告和恢复 

 错误报告 

 错误恢复 

 bison错误恢复 

 编译器错误恢复 

 练习 

第9章 flex和bison进阶 

 纯词法分析器和纯语法分析器 

 glr分析 

 c++语法分析器 

 练习 

附录 sql语法分析器文法和交叉引用 

术语表