指针题swap语句的实参为什么用了两个取址符

img


swap语句的实参为什么用了两个取址符,不是交换数值嘛,为什么用了取址,而不是swap(*x,*y)啊这部分很懵,求大家指点迷津

传递实参时候,用了取地址符号,是传址调用,这样在形参里面可以通过地址来找到需要交换的两个数字,通过指针在函数里面操作来交换,如果不这样(取地址交换),为传值调用,形参的改变,不会改变实参的结果,所以,没有变化,也不会对两个数值进行交换!
特别需要注意这一点,对于传值调用还是传址调用,可以根据需求来进行!!

x,y这两个变量是在main中的局部变量,通过swap函数去交换他们的值,只有把x和y的地址传递进入直接操作才能实现