标题:关于Q++和++Q的问题请教,
取消只看楼主
yeguohua55
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2008-8-29
 问题点数:0 回复次数:1 
关于Q++和++Q的问题请教,
程序是这样的:
#include "stdio.h"
main(){
int i=5,j=5,p,q;
p=(i++)+(i++)+(i++);
q=(++j)+(++j)+(++j);
printf("%d,%d,%d,%d",p,q,i,j);
}
按书上说是:这个程序中,对P=(i++)+(i++)+(i++)应理解为三个i相加,故P值为15。然后i再自增1三次相当于加3故i的最后值为8。而对于q 的值则不然,q=(++j)+(++j)+(++j)应理解为q先自增1,再参与运算,由于q自增1三次后值为8,三个8相加的和为24,j的最后值仍为8。结果为:15 24 8 8
可我编译后的结果为:15 22 8 8 ,这是为什么啊?22是怎么算出来的,
搜索更多相关主题的帖子: include 
2008-09-04 09:58
yeguohua55
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2008-8-29
得分:0 
虽然还是没有明白22是怎么来的,还是谢谢各位老大的建议
2008-09-05 10:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-231324-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.148027 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved