flex[詞法分析器生成工具]

flex[詞法分析器生成工具]
flex[詞法分析器生成工具]
更多義項 ▼ 收起列表 ▲

Flex是一個生成詞法分析器的工具,它可以利用正則表達式來生成匹配相應字元串的C語言代碼,其語法格式基本同Lex相同。

基本信息

簡介

單詞的描述稱為模式(Lexical Pattern),模式一般用正規表達式進行精確描述。FLEX通過讀取一個有規定格式的文本檔案,輸出一個C語言源程式。

FLEX的輸入檔案稱為LEX源檔案,它內含正規表達式和對相應模式處理的C語言代碼。LEX源檔案的擴展名習慣上用.l表示。FLEX通過對源檔案的掃描自動生成相應的詞法分析函式int yylex(),並將之輸出到名規定為lex.yy.c的檔案中。實用時,可將其改名為lexyy.c。該檔案即為LEX的輸出檔案或輸出的詞法分析器。也可將int yylex()加入自已的工程檔案中使用。

源檔案格式

LEX對源檔案的格式要求非常嚴格,比如若將要求頂行書寫的語句變成非頂行書寫就會產生致命錯誤。而LEX本身的查錯能力很弱,所以書寫時一定要注意。

LEX的源檔案由三個部份組成,每個部分之間用頂行的“%%”分割,其格式如下:

定義部份

%%

規則部份

%%

用戶附加C語言部份

相關詞條

相關搜尋

熱門詞條

聯絡我們