一个c++编写的语法分析器(编译愿意LL(1)文法)
1 输入任意文法,改写文法使其成为LL(1)文法。
1.1 由于老师给的应该是最适合我们联系的LL(1)文法,所以说我也是用以下文法进行分析。
E→E+T | T
T→T*F | F
F→( E ) | i
注意e在此表示‘’,也就是空,表示没有任何字符输入。
1.2 消除左递归
E--------TE’
E’----------+TE’|e
T ------------FT’
T’---------------*FT’|e
F------------------(E)|i
1.
原创
2021-01-04 16:05:49 ·
2609 阅读 ·
3 评论