一般变量作函数参数,调用结束后,只改变了形式参数的值,实参不变。
指针变量作函数参数,调用结束后,不能改变实参指针变量的值但可以改变实参指针变量所指向变量的值。
/* 2013年11月7日 */
/*一般变量作函数参数*/
#include"iostream"
using namespace std;
void swap(int x, int y)
{
int t;
t=x; x=y; y=t;
}
void main(void)
{
int *point1, *point2, a,b;
cin>>a>>b;
point1=&a; point2=&b;
if (a<b)swap(a, b);
cout<<"a="<<a<<",b="<<b<<'\n';
cout<<*point1<<" "<<*point2<<endl;
}
结果:
/*指针变量作函数参数*/
#include"iostream"
using namespace std;
void swap(int *p1, int *p2)
{ int t;
t=*p1;
*p1=*p2;
*p2=t;
}
void main(void)
{
int *point1, *point2, a,b;
cin>>a>>b;
point1=&a; point2=&b;
if (a<b) swap (point1, point2);
cout<<"a="<<a<<",b="<<b<<endl;
cout<<*point1<<","<<*point2<<endl;
}
结果: