-
flex
(詞法分析器生成工具)
鎖定
Flex是一個生成詞法分析器的工具,它可以利用正則表達式來生成匹配相應字符串的C語言代碼,其語法格式基本同Lex相同。
[1]
- 中文名
- 快速詞法分析器生成器
- 外文名
- Fast Lexical Analyzer Generator
- 設計語言
- C語言
- 格 式
- LEX源文件
- 類 別
- 一個生成詞法分析器的工具
flex簡介
單詞的描述稱為模式(Lexical Pattern),模式一般用正規表達式進行精確描述。FLEX通過讀取一個有規定格式的文本文件,輸出一個C語言源程序。
FLEX的輸入文件稱為LEX源文件,它內含正規表達式和對相應模式處理的C語言代碼。LEX源文件的擴展名習慣上用.l表示。FLEX通過對源文件的掃描自動生成相應的詞法分析函數int yylex(),並將之輸出到名規定為lex.yy.c的文件中。實用時,可將其改名為lexyy.c。該文件即為LEX的輸出文件或輸出的詞法分析器。也可將int yylex()加入自已的工程文件中使用。
[2]
flex源文件格式
LEX對源文件的格式要求非常嚴格,比如若將要求頂行書寫的語句變成非頂行書寫就會產生致命錯誤。而LEX本身的查錯能力很弱,所以書寫時一定要注意。
LEX的源文件由三個部份組成,每個部分之間用頂行的“%%”分割,其格式如下:
定義部份 %% 規則部份 %% 用户附加C語言部份
- 參考資料
-
- 1. Flex: The Fast Lexical Analyzer has moved .Flex官網[引用日期2020-04-23]
- 2. 詞法分析器生成工具FLEX簡介 .C++博客[引用日期2014-05-22]
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:10次歷史版本
- 最近更新: 阿妧云