gta 发表于 2009-05-27 14:16

楼上正解,应把
A->Ab | b
改成
A -> bR
R -> bR | epsilon

ps:繁体字好难认哦:em06:

Cyberman.Wu 发表于 2009-06-04 13:06

好像真正用的编译器很少有用lex/yacc生成前端的,应该是效率比较低,或有某些限制吧,在现实工作中遇到的lex/yacc多数是一些自定义的简单语言(如某公司的单板告警描述),或一些简单的小Shell(VxWorks5.1的Target Shell)。

现在做编译器前端相对比较成熟了,更多是在拼后端吧。

cjaizss 发表于 2009-06-04 13:32

手工很正常啊,以前版本用的是lex/yacc
to 6L:
编译原理里会有详细的介绍,建议详细学一学

hyzyhy 发表于 2010-06-23 19:44

页: 1 [2]
查看完整版本: gcc中C语言的词法分析是怎么做的?