-2
A
回答
-1
看起来,C编译器确实将a+++
解释为a++ +
,而即使您将其他变量放在其之前,+++b
也会生成错误。
在实践中,编写这样的表达式不含空格是一个非常糟糕的主意。你会混淆自己,当你回过头来看看你的代码,并激怒任何人看它:)只要改写:
a++ + b++
a++ + ++b
,并如预期一切都将正常工作。
相关问题
- 1. 基于选择的优先级增加或减少
- 2. c#Trackbar增加/减少
- 3. 用C#动态增加/减少数字
- 4. 在短时间内减少自我优先级,然后将其增加回
- 5. 拖动增加/减少值
- 6. 减少和增加浮动增量android
- 7. 对首先增加然后减少的数组进行排序
- 8. 在C++中增加和减少增量控件的值WINAPI
- 9. 动态增加/减少数组大小
- 10. 在RecyclerView中增加和减少数量
- 11. 增加/减少UIImageView的亮度
- 12. 增加进程优先级与pthread_win32
- 13. 多个减少增加应用
- 14. 在Windows上增加io优先级?
- 15. 优先级队列增加键opeartion
- 16. 增加布局约束的优先级
- 17. 的Arduino:增加和减少的按钮
- 18. 在NSString中增加或减少整数
- 19. 增加/减少大量整数
- 20. nodejs反向计数(增加/减少)
- 21. “无限”增加/减少角度
- 22. 点击字体增加和减少
- 23. phpcassa中增加/减少的值
- 24. 减少但不增加背景大小
- 25. 在jQuery中增加/减少.data()
- 26. WACounter显示,但不增加/减少
- 27. Javascript函数增加/减少cellValue
- 28. 增加/减少图像大小,网站
- 29. Gstreamer:动态增加和减少延迟
- 30. MPMusicPlayerController音量增加和减少动态
答案通俗地称为'最大蒙克'规则。词法分析器将尽可能多地获取令牌。当它看到'c = a +++ b ++;'时,它识别'a ++ + b ++'。当它看到'c = a +++++ b;'时,它识别出'a ++ ++ + b',并且不能增加增量操作的结果。还必须有其他问题提出相同的问题。 –
加上Jonathan所说的,这就是编译器提示你增加运算符所需的*左值的原因。 – nullpointer
@JonathanLeffler这可能是一个更好的重复(你击败了我36秒):http://stackoverflow.com/questions/5341202/why-doesnt-ab-work-in-c –