引用自维基:
void term(void) {
factor();
while (sym == times || sym == slash) {
getsym();
factor();
}
}
void expression(void) {
if (sym == plus || sym == minus)
getsym();
term();
while (sym == plus || sym == minus) {
getsym();
term();
}
}
它void
为每个规则使用返回类型,
在那种情况下,如何知道特定分支是失败还是成功?
IMO,每条规则都应使用布尔返回类型来指示此分支是失败还是成功。
这个对吗?