#include <iostream.h>
void swap(int *&p1,int *&p2)
{
int *temp;
temp=p1;
p1=p2;
p2=temp;
}
void main()
{
int a,b;
int *pointer1,*pointer2;
cin>>a>>b;
pointer1=&a;
pointer2=&b;
swap(pointer1,pointer2);
cout<<a<<" "<<b<<endl;
}
void swap(int *&p1,int *&p2)
{
int *temp;
temp=p1;
p1=p2;
p2=temp;
}
void main()
{
int a,b;
int *pointer1,*pointer2;
cin>>a>>b;
pointer1=&a;
pointer2=&b;
swap(pointer1,pointer2);
cout<<a<<" "<<b<<endl;
}
#include <iostream.h>
void swap(int *p1,int *p2)
{
int *temp;
*temp=*p1;
*p1=*p2;
*p2=*temp;
}
void main()
{
int a,b;
int *pointer1,*pointer2;
cin>>a>>b;
pointer1=&a;
pointer2=&b;
swap(pointer1,pointer2);
cout<<a<<" "<<b<<endl;
}
{
int *temp;
temp=p1;
p1=p2;
p2=temp;
}
这个函数只是在内部把传进来的参数值互换了,对于调用方当然没有任何影响。
最小的改动方案是把参数声明改一下:
void swap(int* &p1,int* &p2)