首页 > 代码库 > 引用 互换变量值 -- C

引用 互换变量值 -- C


#include <stdio.h>

void
swap(int * p, int * q)
{
	int tmp;
	tmp = *p;
	*p = *q;
	*q = tmp;
}

void
swap1(int &p, int &q)
{
	int tmp;
	tmp = p;
	p = q;
	q = tmp;
}

int
main()
{
	int a = 1, b = 2;
	
	/*	大家都见过,不多做解释 */
	swap(&a,&b);
	printf("a = %d, b = %d\n",a,b);	

	/*	引用方式交换数据,引用相当于一个别名,
		p和a变量指向同一个地址空间,修改同一个内存单元*/
	swap1(a,b);
	printf("a = %d, b = %d\n",a,b);	
}
/*
结果:
a = 2, b = 1
a = 1, b = 2
*/