词条 | flex与bison(中文版) |
释义 | 基本信息作者: John Levine译者: 陆军 出版社:东南大学出版社 ISBN:9787564126056 上架时间:2011-4-13 出版日期:2011 年3月 开本:16开 页码:1 版次:1-1 内容简介如果你需要分析或处理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章 Flex规范参考 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语法分析器文法和交叉引用 术语表 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。