其实我觉得应该是这样的k=(i++)+(++i)(i++),在进行运算之前它应该只有一次自加,那么i=4,之后运算算术运算符+时 应该是三个i相加,这样就可以理解,要是按照上面的想法的话怎么算都是13.而且可以举个例子
void main(){
int i=1,k,m;
k=(i++)+(i++)+(i++);
m=(++i)+(++i)+(++i);
printf("%d,%d,%d",k,i,m);
return 0;
}
运算的结果应该是 k=3 i=4 m=12
可以看出来m的值中i是4
所以应该是先进行了i的自加然后分配到全部i上