本文介绍: 用交换两个变量值的例子对比指针与引用。

交换a、b值 

方法一

使用指针,需在传参时传递地址,并且需新定义两个指针变量分别指向a、b。

void Swap(int* p1, int* p2) {
	int t;
	t = *p1;
	*p2 = *p1;
	*p2 = t;
}//注意两处的*含义不同,第一处*是定义指针变量,*只是起到说明作用
//第二处*是解引用,*p1为实际值
int main() {
	int a, b;
	cin >> a >> b;
	int* pa = &a;
	int* pb = &b;
	swap(*pa,*pb);
	cout << "a= " << a << "b= " << b;
	return 0;
}

方法一

使用引用,C++引入引用,只需在函数定义时指明别名,函数调用时,x,y就初始化为a,b的别名,共用内存空间。

void Swap(int &x, int &y) {

	int t;
	t = x;
	x= y;
	 y= t;
}
int main() {
	int a, b;
	cin >> a >> b;
	swap(a, b);
	cout << "a= " << a << "b= " << b;
	return 0;
}

原文地址:https://blog.csdn.net/2301_80162458/article/details/135574428

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_57477.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注