有个有关问题

有个问题fun(intx,inty){return(x+y)}main(){inta1,b2,c3,sumsumfun((a++,b++,a+b),c++)printf( %

有个问题
fun(int   x,int   y){return(x+y);}
main()
{int   a=1,b=2,c=3,sum;
sum=fun((a++,b++,a+b),c++);
printf( "%d\n ",sum);
getch();
}
为什么结果是8,请问是怎么算的?

[解决办法]
(a++,b++,a+b)逗号表达式出来时是5
在加上3 就是8,这个时候++还没有执行。