本帖最后由 未来电子 于 2013-3-26 19:32 编辑
int p,q,i,j;
i=j=3;
q=0;
q=++j
printf("%d,",q);
这时候的运算的值是4,
int p,q,i,j;
i=j=3;
q=0;
q=(++j)+(++j);
printf("%d,",q);
这时候的运算的值是10,
int p,q,i,j;
i=j=3;
q=0;
q=(++j)+(++j)+(++j);
printf("%d,",q);
这时候的运算的值是16,
第二个结果就不明白了,会的解释一下
软件换过好几个都是这个情况。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
中国人长期受应试教育的荼毒,形成了错误思维定势
我看过一本书讲过这类问题,
详细区分了三种情况。 未规定,由编译器自己去确定,编译器个不一样;
不确定,某家编译器自己制定的标准,所有版本均一直。
未知,编译器的前后版本也不一致;
一周热门 更多>