void swap(int x, int y)
{
int t = x;
x = y;
y = t;
}
void main(){
int a=4,b=6;
swap(a,b);
printf("a=%d b=%d\n", a, b);
}
输出结果为a =4,b=6 。a和b的值并没有如我们期望的发生改变。如果想要修改a和b的值只能通过修改地址的方式或者使用引用参数来进行交换。地址的方式不再介绍,主要记录下引用参数的方式。
在C++中,如果需要把形式参数声明为引用类型,只需在参数名字钱=前加上引用运算符&即可。简单的说,引用是给一个已知变量起别名,它不占用任何存储单元。对引用的操作也就是对被它引用的变量的操作,它们代表同一个存储单元。因此对引用的修改也会引起实参的变化。
void swap(int &x,int &y)
{
int t = x;
x = y;
y = t;
}
void main()
{
int a=3, b=6;
swap(a, b);
printf("a = %d,b =%d\n",a,b);
}
a和b的值进行了交换。