#include<iostream>
using namespace std;
void Exchg1(int x, int y)// 值传递
{
int tmp;
tmp=x;
x=y;
y=tmp;
cout<<"x="<<x<<"y ="<<y<<endl;
}
void Exchg2(int *px, int *py)//地址传递
{
int tmp=*px;
*px=*py;
*py=tmp;
cout<<"*px="<<*px<<"*py="<<*py<<endl;
}
void Exchg3(int &x, int &y)//引用传递
{
int tmp=x;
x=y;
y=tmp;
cout<<"&x="<<x<<"&y="<<y<<endl;
}
main()
{
int a=4;int b=6;
Exchg1(a,b);//传递的a,b的内容
cout<<"a="<<a<<"b="<<b<<endl;
a=4;b=6;
Exchg2(&a,&b);//a,b的地址值传递给了px,py
cout<<"a="<<a<<"b="<<b<<endl;
a=4; b=6;
Exchg3(a,b);//函数里是用a,b分别代替了x,y。函数里操作的是a,b
cout<<"a="<<a<<"b="<<b<<endl;
}