#include"iostream"
using namespace std;
// 本代码为C/C++本版
// 本代码为“值传递与地址传递”[在交换变量时,最好选择地址传递!]
void swapOne(int x,int y){
int t;
t = x;
x = y;
y = t;
}
void swapTwo(int *p,int *q){
int t;
t = *p;
*p = *q;
*q = t;
}
int main(){
// 定义两个整型变量
int a,b;
cout<<"please input two nums:";
cin>>a>>b;
/**
* 值传递,将实参的值传递给形参变量,即使函数里做了变量交换
* 也不会影响实际参数的值
*
*/
swapOne(a,b); // 调用自定的值传递函数
cout<<"a="<<a<<" b="<<b<<"\n";
/**
* 地址传递,则与上面的相反,当实参为变量的一个地址时,
* 则将该地址传递给形参变量,让形参变量指向该地址所代表的存储单元。
*/
swapTwo(&a,&b);
cout<<"a="""<<a<<" b="<<b;
}
C/C++值传递与地址传递
最新推荐文章于 2024-07-25 12:39:48 发布