-2

我读到有可能做到这一点,

是否需要回溯?

从解析错误中恢复的草图是什么。

4

1 回答 1

1

自上而下的解析器可以检测不合语法的方式,即输入字符串的无效性,例如:

例如,如果您的堆栈顶部有非终端 A,并且输入字符串中的下一个标记是符号 b,

然后转到您的解析表并转到 A 的行和 b 的列,如果有一个空单元格,则输入字符串无效。

一种恢复的方法是进入恐慌模式,在这种模式下跳过输入字符串中的标记,直到在同步集中找到一个标记,然后将 A 从堆栈中弹出并继续。

选择同步集的几种方法,例如可以是follow(A)

于 2015-05-12T00:22:11.733 回答