测试。(c/cpp)
#include <stdio.h>
int main(int argc, char** argv)
{
int a = 0, b = 0;
printf("a = %d, b = %d\n", a, b);
b = (++a)--;
printf("a = %d, b = %d\n", a, b);
return 0;
}
如果我将以上内容保存为 .cpp 文件,它会在执行时编译并输出:
a = 0, b = 0
a = 0, b = 1
但是,如果我将其保存为 .c 文件,则会收到以下错误:
test.c:7:12: error: lvalue required as decrement operator.
手术前不应该(++a)
先解决(newValue)--
手术吗?有人对此有任何见解吗?