源程序:
/*被调函数通过间接访问主函数数据的内存地址,可直接对主函数数据进行操作*/
#include <stdio.h>
void chageData(int *x,int *y)//定义两个指针变量来保存a,b的内存地址
{
int temp;
temp=*x;
*x=*y;
*y=temp;
}
int main()
{
int a=2,b=4;
printf("交换前:a=%d,b=%d\n",a,b);
chageData(&a,&b);
printf("交换后:a=%d,b=%d\n",a,b);
return 0;
}
程序运行结果:
交换前:a=2,b=4
交换后:a=4,b=2