首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求解++i和i++的混合运算,该如何解决

2012-05-03 
求解++i和i++的混合运算#includestdio.hvoid main(){int i5,kk(++i)+(++i)+(i++)printf(%d,%d,k,i

求解++i和i++的混合运算
#include<stdio.h>
void main()
{
 int i=5,k;
 k=(++i)+(++i)+(i++);
 printf("%d,%d",k,i);
  
}
为什么tc的运行结果为21,8;
自己分析的话应该为20,8;
i=5
运行下来++i,得6,在运行++i,得7,最后运行i++,得7;累加起来k=20,i=8;

[解决办法]
在(++i)+(++i)操作中i=7
所以变成了7+7+7 
然后i++起作用 i = 8
[解决办法]
i的地址只有一个,第一个++i后是6,第二次后是7,但是同一个地址,所以第一个也变成7了 , 所以7+7+7=21.

热点排行