如何区分令牌序列"op_Minus“" number”和简单的负数?
发布于 2011-03-03 04:07:10
我认为它依赖于上下文,并且依赖于解析源代码时遇到的操作数的数量。
根据您选择/遇到的语法类型,您在处理减法时可能会遇到以下情况:
operand1 - operand2或者,如果您的语言使用前缀表示法,您将得到类似下面这样的结果:
- operand1 operand2
(- operand1 operand2)在这两种情况下,如果您正在处理减法或负数,那么您应该能够从前一个标记(在中缀表示法的情况下)或从下一个标记/下两个标记的前视中推导出来,因为后者只有一个操作数。
https://stackoverflow.com/questions/5172516
复制相似问题