【发布时间】:2014-09-15 02:30:33
【问题描述】:
我尝试了一些C 语言的代码,但我遇到了这个问题。
int i=0;
i=i+++ ++i; //works fine
//i=i++ +++i; gives error
我的困惑是i+++ 是如何运行的?但是+++i 返回错误。
【问题讨论】:
-
即使行为不是未定义的,无论
i=i+++ ++i;应该是什么意思,肯定有更清晰的方式来表达它,也许int i = 3;如果恰好是你的意思。 -
虽然很好理解为什么第二行会产生错误,但这是一种糟糕的编码风格。请避免这种编码风格。
-
@RSahu 我没有使用这种风格,只是想了解一些事实。
标签: c operators post-increment pre-increment