如何解决如何解析表达式x --- y?它是法律表达吗?
| 如何解析表达式“ 0”?它是法律表达吗?解决方法
合法,解析为
x--
-
y
。
我相信前两个减号被解释为减后运算符,因为它是出现在x
之后的最长标记。这使第三减号起到减法的作用。
这符合最大多数规则[1]
[1]。 http://en.wikipedia.org/wiki/Maximal_munch
,对于所有数据类型,其解析为“ 5”。如果它是一些“ 6”对象,则必须定义后减量运算符和减运算符,如果仅定义预减量运算符,它将给编译器错误。这就是说,无论如何都要强加“ 5”。
,这与运算符优先级有关。看看这张桌子。
减/增运算符优先于算术运算。它将被解析为x-- - y
。
更正我的答案:解析器首先匹配最长的令牌,因此选择--
而不是算术-
。结果表达式被解析为“ 5”
,(x-)-y;您使用哪个编译器? x和y的类型是什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。