lili200238 发表于 2016-10-2 17:03:03

对于++,--的输出结果

#include<stdio.h>
int main()
{
        int i=5,j=5,p,q;

        p=(i++)+(i++)+(i++);
        printf("%d,%d\n",i,p);

        q=(++j)+(++j)+(++j);
        printf("%d,%d\n",j,q);
}

欢迎大家来讨论这个输出的结果。

小剑剑 发表于 2016-10-2 19:10:25

在我的电脑结果是
8,18
8,22
翻了一下书
书上说这样的语句c++是没有明确定义的,应尽量避免

云从 发表于 2016-10-2 21:23:49

我用VC和codeblocks运行程序,得到两个不同的结果,。。。
分别是
8,15
8,22

8,18
8,22
。。。。。已跪

lili200238 发表于 2016-10-2 21:42:11

小剑剑 发表于 2016-10-2 19:10
在我的电脑结果是
8,18
8,22


{:7_113:}{:7_113:}

lili200238 发表于 2016-10-2 21:47:08

云从 发表于 2016-10-2 21:23
我用VC和codeblocks运行程序,得到两个不同的结果,。。。
分别是
8,15


这就是我发帖子的初衷,就是想大家讨论下具体的原因是什么呢?

代码农民 发表于 2016-10-26 22:45:42

本帖最后由 代码农民 于 2016-10-26 22:53 编辑

这是谭浩强书里的吧?程序语法并没有错误,但是不同的编译器会有不同的解释!
所以为了统一口径,以后千万不要这样写代码!——听人说这样写会被骂、、、
所以不必纠结个问题。
页: [1]
查看完整版本: 对于++,--的输出结果