#include <iostream>
using namespace std;
void swap1(int *p,int *q)//传指针
{
int *temp;
temp=p;
p=q;
q=temp;
}
void swap2(int *&p,int *&q)//传指针的引用
{
int *temp;
temp=p;
p=q;
q=temp;
}
void swap3(int *p,int *q)//传指针,修改地址的值
{
int temp;
temp=*p;
*p=*q;
*q=temp;
}
void swap4(int &p,int &q)//传值的引用
{
int temp;
temp=p;
p=q;
q=temp;
}
void swap5(int p,int q)//传值
{
int temp;
temp=p;
p=q;
q=temp;
}
int main()
{
int a=5,b=6;
int c=5,d=6;
int *m=&c,*n=&d;
int e=5,f=6;
int g=5,h=6;
int i=5,j=6;
swap1(&a,&b);
swap2(m,n);
swap3(&e,&f);
swap4(g,h);
swap5(i,j);
cout<<"传指针:"<<a<<","<<b<<endl;// 5,6
cout<<"传指针的引用:"<<*m<<","<<*n<<endl;//6,5
cout<<"传指针,修改地址的值:"<<e<<","<<f<<endl;//6,5
cout<<"传值的引用:"<<g<<","<<h<<endl;//6,5
cout<<"传值:"<<i<<","<<j<<endl;//5,6
return 0;
}