C++:地址传递和值传递

1.值传递

在这里我设置了个交换函数swap1,来交换main函数等会传进来的a和b。

然后打印swap1中a和b交换后的值。

main函数中a=10,b=20。

调用swap1函数。

然后再在main函数中打印是否a跟确实发生了变化。

结果显而易见并没有发生改变,前两行调用的是swap1函数里面的打印,后两行则是main函数中的打印,在swap1确实发生了交换,可是到了main函数中并没有。

2.地址传递

在这里我设置了个交换函数swap2,来重新交换main函数等会传进来的a和b。

而这里我使用的是指针。指针是用来存储地址的,相当于把a的地址传进去,b的地址传进去。并不单单是传递值。

运行后的结果跟我所想要的结果一摸一样,交换了a和b的值。