值传递
规则
值传递就是函数调用时实参将数值传入函数给形参
值传递时,形参改变不会影响到实参
实现
void swap(int a, int b){
int tmp = a;
a = b;
b = tmp;
cout << a << " " << b << endl;
}
int main(){
int x = 10, y = 20;
swap(x, y);
cout << x << " " << y;
}
原理
地址传递
可修饰形参
实现
void swap(int *a, int *b){
int tmp = *a;
*a = *b;
*b = tmp;
cout << a << " " << b << endl;
}
int main(){
int x = 10, y = 20;
swap(&x, &y);
cout << x << " " << y;
}
原理