鱼C论坛

 找回密码
 立即注册
查看: 1452|回复: 9

[已解决]小白问下一个关于全局与局部变量的问题

[复制链接]
发表于 2018-6-29 23:52:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
QQ截图20180629232651.png
这里说调用fun3(var), var并没有声明全局变量,能理解;但是fun2(var)函数里,好像也没声明var是全局变量啊?怎么结果就是'baby i love you'呢
最佳答案
2018-6-30 17:52:52
本帖最后由 凌九霄 于 2018-6-30 18:03 编辑
夜雨声烦12138 发表于 2018-6-30 17:47
那fun3(var)里的var就不是fun2的var了吗


是fun2里的var,只是fun2里的var是fun1里面申明的那个global var,也就是函数外面的那个var,一层层传递下来的,fun3里var则是它自己的,跟最外面的var同名,但它的作用范围仅仅在fun3内部,不会影响到最外面的var,之所以变成了局部的,是因为它进行了一个赋值操作,如果没有赋值操作,而是象fun2里面那样进行连接操作的话,那么fun3里面的var也还是最初的var,你可以试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-30 00:33:47 | 显示全部楼层
fun2(var) 里面的var就是fun1 的 global var,传递给了它
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-6-30 06:32:15 | 显示全部楼层
本帖最后由 新手·ing 于 2018-6-30 06:34 编辑

因为fun2(var)接受参数了啊,这里var还是全局的。
global对fun2同样起作用,
要注意fun1返回的是fun2,而fun3只是单独差创建了一个局部变量而已。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-30 17:45:13 | 显示全部楼层
新手·ing 发表于 2018-6-30 06:32
因为fun2(var)接受参数了啊,这里var还是全局的。
global对fun2同样起作用,
要注意fun1返回的是fun2,而 ...

那它(global)就对fun3不起作用了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-30 17:47:54 | 显示全部楼层
凌九霄 发表于 2018-6-30 00:33
fun2(var) 里面的var就是fun1 的 global var,传递给了它

那fun3(var)里的var就不是fun2的var了吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-6-30 17:52:52 | 显示全部楼层    本楼为最佳答案   
本帖最后由 凌九霄 于 2018-6-30 18:03 编辑
夜雨声烦12138 发表于 2018-6-30 17:47
那fun3(var)里的var就不是fun2的var了吗


是fun2里的var,只是fun2里的var是fun1里面申明的那个global var,也就是函数外面的那个var,一层层传递下来的,fun3里var则是它自己的,跟最外面的var同名,但它的作用范围仅仅在fun3内部,不会影响到最外面的var,之所以变成了局部的,是因为它进行了一个赋值操作,如果没有赋值操作,而是象fun2里面那样进行连接操作的话,那么fun3里面的var也还是最初的var,你可以试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-6-30 18:48:51 From FishC Mobile | 显示全部楼层
fun3最后加个return var会变怎么样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-6-30 19:21:56 | 显示全部楼层
chongchuigu 发表于 2018-6-30 18:48
fun3最后加个return var会变怎么样


你可以添加print语句直接打印,看看它的值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-30 19:27:24 | 显示全部楼层
chongchuigu 发表于 2018-6-30 18:48
fun3最后加个return var会变怎么样

老样子没变化
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-1 22:57:34 | 显示全部楼层
https://www.cnblogs.com/dsynb/p/9101821.html
希望对你有所帮助。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-18 04:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表