我正在使用 c++ 完成 Stroustrups 编程原理和实践。他在本书的前几章中使用了这种语法来构建计算器。练习之一是在计算器中添加一个阶乘运算符。他给了一个提示
首先修改语法以考虑更高级别的运算符
什么是高级运算符?(不幸的是他没有解释到书中的那一章,我不知道它是否在其他章节中解释过)
他要求修改的语法是这样的:
Expression:
Term
Expression "+" Term
Expression "-" Term
Term:
Primary
Term "*" Primary
Term "/" Primary
Term "%" Primary
Primary:
Number
"(" Expression ")"
Number:
floating-point-literal
我已经为此苦苦挣扎了一整天,但我一无所获。会很高兴得到一些解释。