C语言函数的值传送

C语言函数的值传递#include stdio.hvoid func(int,int)void main(){int a1func(a,++a)}void func(in

C语言函数的值传递


#include <stdio.h>

void func(int,int);
void main(){
   int a=1;
   func(a,++a);
}
void func(int i,int j){
   if(i>j)
      printf(">");
   else if(i==j)
      printf("=");
   else
      printf("<");
}


在func(a,a++)调用后,VC中显示i=j=2;
为什么感觉应该是i=1,j=2,哪位大神绐解释下~~ c 语言
[解决办法]
参数是从右往左压栈的,如果func(++a,a);那么第一个参数大于第二个参数