2009-11-17 65 views

回答

0

Lexer不關心語義生命中唯一的任務就是將源代碼(字符流)轉換成標記,每個標記都有這種形式<Token_type, Information_related_to_token>信息可能是標記(字符串)的值,名稱的運算符(=)...

然後將令牌發送到處理句法分析的分析器。作爲一項詞彙工作,詞法分析員可以創建一個符號表。

0

yacc中,您的詞法分析器獲取一個名爲yylval的全局變量,它是一個C聯合。在yacc中,這成爲$1,$2等的值。

1

詞庫不處理語義,它們只處理將字符流轉換爲令牌(對編譯器有意義的字符序列)。語義是在句法分析期間確定的。有關編譯階段的更多詳細信息,請參閱此answer以前的問題。