# include
void Swap(int *p, int *q);
int main(void)
{
int i = 3, j = 5;
printf("%d, %dn", &i, &j);//1、输出i和j的地址
Swap(&i, &j);//传i和j的地址给函数 ;i传给p;j传给q
printf("%d, %dn", i, j);//5、输出i和j的值
return 0;
}
void Swap(int *p, int *q)
{
printf("%d, %dn", p, q);//2、输出 指针p和q指向的地址,此时p指向的地址是i的地址,q指向的地址是j的地址
printf("%d, %dn", *p, *q);//3、输出p和q指向地址的值,就是3和5
printf("%d, %dn", &p, &q);//4、输出指针p和q自己的地址
int buf;
buf = *p;
*p = *q;
*q = buf;//修改p和q指向地址的值,此时i=5,j=3
return;
}



