为什么函数已被调用,输出结果却没变?
lye 2002-09-14 10:09:30 #include<stdio.h>
void swap(int *x,int *y)
{
int *z;
if(*x>*y){z=x;x=y;y=z;}
printf("%d,%d\n",*x,*y);
}
void main(){int a,b; int *p1,*p2;p1=&a;p2=&b;
printf("input a,b\n");
scanf("%d,%d",&a,&b);
swap(p1,p2);
printf("%d,%d\n",*p1,*p2);
}
结果应该是:
input a,b
2,1
1,2
1,2
经过运行却是:
input a.b
2,1
1,2
2,1
请大家指点!