一个简单的问题,向网友寻求帮助
void swap1(x,y)int x,y;
{int t;t=x;x=y;y=t;}
void swap2(q1,q2)
int *q1,*q2;
{int t ;t=*q1;*q1=*q2;*q2=t;}
main ()
{int a=5,b=8,*p1=&a,*p2=&b;
printf("first is: a=%d,b=%d\n",a,b);
swap1(a,b);printf("second is: a=%d,b=%d\n",a,b);
swap2(p1,p2);printf("third is:a=%d,b=%d\n",a,b);}
请问一下:“int x,y;{int t;t=x;x=y;y=t;}”与“int *q1,*q2;{int t ;t=*q1;*q1=*q2;*q2=t;}”具体的含义?为什么输出的两个结果会相反呢?