传值、传引用调用函数
为什么会是40啊?有大佬解析一下吗
回答
f函数中的x是值传递,保存在栈中,在f函数中即使改动了x的值,在返回的时候还是原来的值,因为只改变了栈的数值。
而a是引用传递,本质是传递了指针,在f函数中改动a会连带改动main中a的位置的参数,也就是x。
因此结果是6*6-1+5=40。等会画个图。
为什么会是40啊?有大佬解析一下吗
f函数中的x是值传递,保存在栈中,在f函数中即使改动了x的值,在返回的时候还是原来的值,因为只改变了栈的数值。
而a是引用传递,本质是传递了指针,在f函数中改动a会连带改动main中a的位置的参数,也就是x。
因此结果是6*6-1+5=40。等会画个图。