变量值不能互换
#include<iostream>
using namespace std;
void swap(int a,int b)
{
int temp;
temp=a;
a=b;
b=temp;
}
int main()
{
int i=3,j=7;
swap(3,7);
cout<<i<<" "<<j<<endl;
return 0;
}
使用指针变量作形参,变量值可以互换
#include<iostream>
using namespace std;
void swap(int *p1,int *p2)
{
int temp;
temp=*p1;
*p1=*p2;
*p2=temp;
}
int main()
{
int i=21,j=87;
swap(&i,&j);
cout<<"i="<<i<<" "<<"j="<<j<<endl;
return 0;
}
利用“引用形参”实现两个变量的值互换
#include<iostream>
using namespace std;
void swap(int &a,int &b)
{
int temp;
temp=a;
a=b;
b=temp;
}
int main()
{
int i=23,j=89;
swap(i,j);
cout<<i<<" "<<j<<endl;
return 0;
}