全局变量什么的是怎么回事?1
发布网友
发布时间:2023-10-19 20:50
我来回答
共1个回答
热心网友
时间:2024-02-03 09:08
首先,你这段程序并没有涉及任何全局变量。
函数fun的参数x是传址调用,函数内部对x的任何修改,将直接反映到函数外的原变量(或者说实参)的值,因此x的结果是30,这个我想你已经理解了。
而y=fun(x)中,y等于函数fun的返回值,也就是fun=x*y的计算结果,即120。
y=10是为了迷惑人的,y不是函数fun的参数,所以fun内部的y与外面的y是不同的变量,两者之间没有半毛钱关系。另外
y=1
y=2
y=3
y=4
以上语句运行后y的值就是4,前面三个实际上都是多余的。因此
y=10
y=fun(x)
前面这个y=10也是多余的,删掉也不影响最终结果