一个程序的问题
谁能告诉我,为什么下面的swap函数无法交换 p_1,p_2,p_3的地址?谢谢!
main ()
{
int n1,n2,n3;
int *p_1,*p_2,*p_3;
printf("请输入三个数 n1,n2,n3:");
scanf("%d,%d,%d",&n1,&n2,&n3);
p_1=&n1;
p_2=&n2;
p_3=&n3;
if (n1>n2) swap(p_1,p_2);
if (n1>n3) swap(p_1,p_3);
if (n2>n3) swap(p_2,p_3);
printf("n1=%d,n2=%d,n3=%d\n",*p_1,*p_2,*p_3);
}
swap(p1,p2)
int *p1,*p2;
{
int *p;
p=p1;p1=p2;p2=p;
}