#include <iostream>void swap1(int a, int b){int tmp = a;a =b;b=tmp;}void swap2(int &a, int & b){int tmp = a;a =b;b=tmp;}int main(){int a =1;int b= 2;std::cout<< a << " " << b << std::endl;swap1 ( a, b);std::cout << a << " " << b << std::endl;swap2 (a, b);std::cout << a << " " << b << std::endl;}求问 两swap函数的区别 麻烦讲下地址那会事儿 谢谢
4 回答
缥缈止盈
TA贡献2041条经验 获得超4个赞
swap1是普通的传参对a,b没有影响。
swap2传入的是别名不是地址,a,b会交换.
传地址a,b也会交换,声明是void swap3(*a,*b);调用时是swap3(&a,&b);
- 4 回答
- 0 关注
- 920 浏览
添加回答
举报
0/150
提交
取消