标题:关于递增、递减运算符
取消只看楼主
paiwj
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2004-5-14
 问题点数:0 回复次数:0 
关于递增、递减运算符

请问这两个问题为什么有不同的结果:

main()

{int j=2;

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

j=2;

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

}

运行结果:j=5,(j++)+(j++)+(j++)=9

j=5,(++j)+(++j)+(++j)=12

而如果改成:

main()

{int j=2,y1,y2;

y1=(j++)+(j++)+(j++);

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

j=2;

y2=(++j)+(++j)+(++j);

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

}

运行结果:j=5,y1=6

j=5,y2=15

搜索更多相关主题的帖子: 运算符 递减 递增 
2004-09-15 14:42



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




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

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