如题
输出是5-6,因为交换的结果无法返回,穿指针可以解决问题。
你目前的代码输出是5-6
因为swap函数传的不是地址 实际上a b没有进行交换,所以输出是5-6
如果把swap函数的参数改为地址传入,那么交换之后地址指向的值做了交换a b才是真正交换了
#include<stdio.h>
#include<stdlib.h>
void swap(int &a,int &b){
int t=a; a=b;b=t;
}
int main()
{
int a=5;
int b=6;
swap(a,b);
printf("%d-%d\n",a,b);
return 0;
}
5-6你这函数参数传参为值引用,而不是指针传递