函数指针和引用 1

定义函数
void exchange_value(int  ,int );  //值作参数,函数参数值
void exchange_pointer1(int *,int *);  //指针作参数1,交换指针指向内容
void exchange_pointer2(int *,int *);  //指针作参数2,交换指针
void exchange_reference(int &,int &);  //引用作参数,交换参数值

void exchange(int  ,int );  //值作参数,函数参数值
void exchange(int *,int *);  //指针作参数1,交换指针指向内容
void exchange(int *,int *);  //指针作参数2,交换指针

主函数
定义变量int a=1,b=2;
输出变量a和b的值;
调用函数exchange_value,输出变量a和b的值;

变量重新赋值a=1,b=2;
调用函数exchange_pointer1,输出变量a和b的值;

变量重新赋值a=1,b=2;
调用函数exchange_pointer2,输出变量a和b的值;

变量重新赋值a=1,b=2;
调用函数exchange_reference,输出变量a和b的值;

变量重新赋值a=1,b=2;
调用重载函数
void exchange(int  ,int ); 输出变量a和b的值;
void exchange(int *,int *); 输出变量a和b的值;

void exchange(int *,int *); 输出变量a和b的值;

 

 

输入

 

输出

a=1,b=2
a=1,b=2
a=2,b=1
a=1,b=2
a=2,b=1
a=1,b=2
a=2,b=1

 

using namespace std; 
#include<iostream>
void exchange_pointer1(int *,int *);
void exchange_pointer2(int *,int *);
void exchange_reference(int &,int &);
void exchange(int  ,int ); 
void exchange(int *,int *); 
void exchange2(int *,int *); 
void  exchange_value(int x,int y )
{
	int t=x;
	x=y;
	y=t;

}
void exchange(int x ,int y)
{
	int t=x;
	x=y;
	y=t;
}
void exchange(int *x,int *y)
{
	int t=*x;
	*x=*y;
	*y=t;
}
void exchange2(int*x,int*y)
{
	int *t=x;
	x=y;
	y=t;
}
int main()
{
	int a=1,b=2;
	cout<<"a="<<a<<","<<"b="<<b<<endl;
	exchange_value(a,b);
	cout<<"a="<<a<<","<<"b="<<b<<endl;
	a=1,b=2;
	exchange_pointer1(&a,&b);
	cout<<"a="<<a<<","<<"b="<<b<<endl;
	a=1,b=2;
	exchange_pointer2(&a,&b);
	cout<<"a="<<a<<","<<"b="<<b<<endl;
	a=1,b=2;
	exchange_reference(a,b);
	cout<<"a="<<a<<","<<"b="<<b<<endl;
	a=1,b=2;
	exchange(a,b);
	cout<<"a="<<a<<","<<"b="<<b<<endl;
	a=1,b=2;
	exchange(&a,&b);
	cout<<"a="<<a<<","<<"b="<<b<<endl;
	a=1,b=2;
	exchange2(&a,&b);
	cout<<"a="<<a<<","<<"b="<<b<<endl;
	return 0;
	
}
void exchange_pointer1(int *x,int *y)
{
	int p=*x;
	*x=*y;
	*y=p;
}
void exchange_pointer2(int *x,int *y)
{
	int *p=x;
	x=y;
	y=p;
}
void exchange_reference(int &x,int &y)
{
	int t=x;
	x=y;
	y=t;
}
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值