我正在读龙书。从书中引用的文本(3.1.4词法错误,PNO 114)词法分析问题
这是难的词法分析器 诉说,没有其他 组件的帮助下,有一个 源代码错误。例如,如果 字符串
fi
在 情况下遇到了 首次在C程序:fi (a == f(x)) ...
一个词法分析器无法分辨是否
fi
是关键字if
或未经申报的拼写错误功能 标识符。由于fi
是有效 词位的令牌ID,词法 分析仪必须返回令牌id
到 解析器而让 一些其他阶段的编译器 - 大概在 解析器这种情况下 - 处理错误由于 换位的信件。
看完这个后我有点困惑。我的理解是词法分析器开始从左向右处理文本,并在模式匹配时返回令牌。因此,对于if
是匹配关键字的语言,fi
如何匹配?
有什么想法?
啊..现在有道理。谢谢 – 2010-07-10 18:17:08