在函数调用的逗号运算顺序和等式中是不同的.
#include <stdio.h>
#include <conio.h>
int function(int temp1,int temp2)
{
        printf("temp1=%d\n",temp1);
        printf("temp2=%d"  ,temp2);
        return 1;
}
int main(void)
{
        int i=1;
        clrscr();
        function(i++,i++);
        getch();
}
结果是:
temp1=2
temp2=1
证明:function(i++,i++);调用是从右到左,即:function(2,1);
还有一个也可以证明这一点:
#include <stdio.h>
#include <conio.h>
int main(void)
{
        int i=1;
        clrscr();
        printf("%d , %d ",i++,i++);
        getch();
}
结果:
2 , 1
但是在等式中是从左到右:
#include <stdio.h>
#include <conio.h>
int main(void)
{
        int i=1;
        clrscr();
        i=(i++,i+10);
        printf("%d",i);
        getch();
}
结果:
12
i=(i++,i+10);的执行顺序是:从左到右.