我想创建以下2 C/C++/Java代码片段的抽象语法树:这种情况下的抽象语法树?
1) return j++-200*20-++A*7
2) return j++-200*20-A++*7
有人可以解释他们的差异,当谈到自己的AST?
我想创建以下2 C/C++/Java代码片段的抽象语法树:这种情况下的抽象语法树?
1) return j++-200*20-++A*7
2) return j++-200*20-A++*7
有人可以解释他们的差异,当谈到自己的AST?
return j++ - 200*20 - ++A*7
和return j++ - 200*20 - A++*7
将具有相同的AST直至涉及A
的节点。第一个将有一个pre-increment A
节点,而第二个将有一个post-increment A
节点。
为什么你不能自己创建AST并比较它们? –
@Ira Baxter问题是我得到了同样的树... – MATH000
对于'++ A'和'A ++'之间的区别,看一看[Increment/Decrement Operators(++/- )]( http://stackoverflow.com/documentation/java/176/operators#t=201611200425069375529)在SO文档中的页面。 – Gulllie