《lex與yacc》是由美 John R.Levine 、 美 Tony Mason、美 Doug Brown編寫,機械工業出版社出版的一本書籍。
基本介紹
- 作者:John R.Levine、 美 Tony Mason、 美 Doug Brown
- 譯者:楊作梅 / 張旭東
- ISBN:9787111107217
- 頁數:375
- 定價:45.00元
- 出版社:機械工業出版社
- 出版時間:2003-1
內容介紹
作者介紹
作品目錄
第一章 lex和yacc
最簡單的lex程式
用lex識別單詞
語法
運行lex和yacc
lex和手寫的詞法分析程式
練習
第二章 使用lex
正則表達式
單詞計數程式
分析命令行
C原始碼分析程式
小結
練習
第三章 使用yacc
語法
移進/歸約分析
yacc語法分析程式
詞法分析程式
算術表達式和歧義性
變數和有類型的標記
符號表
函式和保留字
用make構建語法分析程式
小結
練習
第四章 選單生成語言
MGL的概述
開發MGL
構建MGL
螢幕處理
結束
MGL代碼示例
練習
第五章 分析SQL
SQL的要點概述
語法檢查程式
語法分析程式
嵌入式SQL
練習
第六章 lex規範參考
lex規範的結構
BEGIN
程式錯誤
字元變換
上下文相關
定義(替換)
ECHO
包含操作(檔案的邏輯嵌套)
從字元串中輸入
input()
內部表(%N聲明)
lex庫
行號和yylineno
文字塊
一個程式中的多個詞法分析程式
output()
lex 詞法分析程式的可移植性
正則表達式語法
REJECT
從yylex()中返回值
起始狀態
unput()
yyinput()、yyoutput()、yyunput()
yyleng
yyless()
yylex()
yymore()
yytext
yywrap()
第七章 yacc語法參考
yacc語法的結構
動作
歧義和衝突
yacc中的程式錯誤
結束標記
錯誤標記和錯誤恢復
%ident 聲明
繼承的屬性($0)
辭彙的反饋
文字塊
文字標記
yacc語法分析程式的可移植性
優先權、結合性和操作符聲明
遞歸規則
規則
特殊字元
開始聲明
符號值
標記
%type聲明
%union聲明
變體和多重語法
y.output檔案
yacc庫
YYABORT
YYACCEPT
YYBACKUP
yyclearin
yydebug和YYDEBUG
yyerrok
YYERROR
yyerror()
yyparse()
YYRECOVERING()
第八章 yacc歧義和衝突
指針模型和衝突
衝突的普通示例
如何修復衝突
小結
練習
第九章 錯誤報告和恢復
錯誤報告
錯誤恢復
練習
附錄一 AT&T lex
附錄二 AT&T yacc
附錄三 Berkeley yacc
附錄四 GNU bison
附錄五 flex
附錄六 MKS lex和yacc
附錄七 Abraxas lex和yacc
附錄八 POSIX lex和yacc
附錄九 MGL編譯程式代碼
附錄十 SQL分析程式代碼
參考文獻
辭彙表