66问答网
所有问题
函数外部定义了全局变量,函数内部定义了同名同类型的局部变量,函数内引用这个变量时是引用的哪个啊?
函数返回这个变量值,是返回局部变量值还是全局变量值啊?
举报该问题
推荐答案 2010-10-18
变量的引用过程,类似于栈。
就是说编译器从变量引用处以最近逻辑距离开始搜索,找到后则开始使用停止则停止搜索;如果查找失败则编译出错。
举个例子来说,就是优先引用函数内部的(逻辑距离最近),其次引用同一个源文件中全局的,如果函数内部、同一个源文件中没有,再引用包含文件中的。
返回值也是对变量的引用,当然是局部变量。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://66.wendadaohang.com/zd/UvUpUis9v.html
其他回答
第1个回答 2010-10-29
函数内当然是引用局部变量啦,返回的也是局部变量
参考资料:
高级语言程序设计
第2个回答 2010-10-17
如果不特别声明是全局变量,当然就是用的局部变量啊,不过最好别这么用啊,容易混淆,程序的可读性很重要的
第3个回答 2010-10-17
名字相同,而且类型相同.则优先访问局部. 因为程序规则就是先从局部变量查找,找不到再找全局..如是类的话,还查找成员. 一般最好别重复,出错难找.编程习惯要良好
第4个回答 2010-10-17
函数内部的 函数内部的会蔽屏函数外部的 语句也是如此
比如说 函数内部定义一个变量 在语句作用域中定义一个相同的变量
语句中使用的变量 将是语句作用域中的定义的 详细资料可以看下C++primer 里面说得很清楚
1
2
3
下一页
相似回答
c++中
函数内部定义了
与
外部同名的变量,
怎么在函数内部
引用
该
同名全局
...
答:
int x;void f(){{int x;x=1;//
引用局部变量
x::x=2;//引用全局变来那个x}x=3;//
引用全局变量
x}
当
全局变量
和
函数内部的局部变量同名
时,在函数内部()。
答:
正确答案:B
c语言问题
局部变量
能不能和
全局变量重名
?
答:
能,局部会屏蔽全局。要用
全局变量,
需要使用 "::" ;局部变量可以与全局
变量同名
,在
函数内引用这个变量
时,会用到
同名的局部变量,
而不会用到全局变量。对于有些 编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那 个局部变量的作用域就在...
函数内
怎么使用
局部变量
和
全局变量
答:
局部变量是
函数内部定义的变量,
其作用域是所在的函数。如果函数外还有一个跟局部变量名字一样的变量,程序会认为它们两个是完全不同的两个变量。当退出函数的时候,其中
的局部变量
就同时被清除。
全局变量
是定义在所有函数以外的变量,其作用域是整个php文件,但是在用户自定义的函数内部是无法使用的。如果...
在
函数
内当
局部变量
与
全局变量重名
时,处理规则是怎样的?
答:
首先,变量包括两个方面
,类型
和名称。比如 double d = 0;void f() { int d = 5;double b = d; //
全局变量,
因此全局
变量的类型
更匹配 } 这种情况两个d是可以区别的,因此b最后是使用全局变量d进行赋值。其次,如果局部变量和全局变量的类型与名称完全一致,在
局部变量定义的
有效域中,局部...
全局变量
和
局部变量
答:
全局变量
和
局部变量的定义
是:1、局部变量:“在
函数内定义的变量
”,即在一个
函数内部定义的变量,
只在本函数范围内有效。2、全局变量:“在函数外定义的变量”,即从
定义变量
的位置到本源文件结束都有效。局部变量(Local variables)指在程序中只在特定过程或函数中可以访问的变量。局部变量是相对于...
大家正在搜
全局变量的作用域一定比局部变量
形参是局部变量还是全局变量
如果全局变量和局部变量同名
局部变量不能与全局变量同名
js全局变量和局部变量的区别
全局变量与局部变量
怎样区分全局变量和局部变量
什么叫局部变量和全局变量
局部变量覆盖全局变量
相关问题
c++中函数内部定义了与外部同名的变量,怎么在函数内部引用该...
c语言问题 局部变量能不能和全局变量重名?
局部变量能否和全局变量重名?
C语言,全局变量和局部变量有什么区别
一个函数内部定义的变量称为()它存放于()存储区,在函数外部...
静态局部变量与全局变量问题
局部变量能否和全局变量重名,为什么
局部变量和全局变量的名字相同时,变量在全局和局部的值是多少,...