用指针交换数值
程序代码:
#include <stdio.h> main() {int a=10,b=20; int *x=&a,*y=&b; printf("a=%d,b=%d\n",a,b); swap(x,y); printf("after swap\ta=%d,b=%d\n",a,b); getch(); } swap(int *x,int *y) {int *t; *t=*x; *x=*y; *y=*t; }编译的结果是a=20,b=20. 为什么不是a=20,b=10 *x指向10赋给*t,*t也指向10,*y指向20赋给*x,*x也等于20,*t赋给*y *y怎么指向20了?- -