0
我有用BNF写的这个语法。我如何将它转换为+优先于*和强制+是正确的联想?关于BNF的问题
<assign> -> id = <expr>
<id> -> A | B | C
<expr> -> <expr> + term | <term>
<term> -> <term> * <factor> | <factor>
<factor> -> (<expr>) | <id>
这是我的解决方案:
<assign> -> id = <expr>
<id> -> A | B | C
<expr> -> <expr> * term | <term>
<term> -> <term> + <factor> | <factor>
<factor> -> (<expr>) | <id>
我怎么能检查一个给定语法的正确性?任何想法?
谢谢,