| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 756 人关注过本帖
标题:怎么在第二个函数快里输出第二个a(值为10)啊
只看楼主 加入收藏
zhaoguoge
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:46
专家分:121
注 册:2009-7-8
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:7 
怎么在第二个函数快里输出第二个a(值为10)啊
程序代码:
#include <iostream.h>
int a=5;
void main() {
    int a=10,b=20;
    cout <<a<<' '<<b<<endl;
    {   int a=0,b=0;
    for (int i=1; i<6; i++) 
    {
        a+=i; b+=a;
    }
    cout <<a<<' '<<b<<' '<<::a<<endl;
    }
    cout <<a<<' '<<b<<endl;
}
::作用符直接调用全局变量了。我要调用值为10的a怎么做啊????
搜索更多相关主题的帖子: 输出 函数 
2009-12-26 21:48
bccnbin2009
Rank: 7Rank: 7Rank: 7
来 自:浙江
等 级:黑侠
帖 子:86
专家分:602
注 册:2009-10-5
收藏
得分:0 
你为什么都要用相同的名字定义呢?

滨封千里
2009-12-27 09:45
debroa723
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:23
帖 子:862
专家分:1954
注 册:2008-10-12
收藏
得分:10 
楼上说的对,保证命名的唯一性是一个良好的习惯。
这里既然说到域,你可以试试使用域名来声明变量,就不怕重名了,当然,域名必须也是唯一的,并保证域名内没有重名命名出现。
namespace XXXXX
{
    int a = 5;
}
就可以如下使用a
XXXXX::a
不过,良好的命名还是必要的,在学习初期就应该养成,否则到了后期想改就不容易了。
2009-12-28 21:38
zhaoguoge
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:46
专家分:121
注 册:2009-7-8
收藏
得分:0 
我只是为了搞明白 域 这个概念!命名规则还是知道点的~~~呵呵   就是突然发现我在第三个a那里调用不了第二个a。很郁闷啊~~~
大家帮帮我  谢谢啊~~~~
2009-12-28 23:39
debroa723
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:23
帖 子:862
专家分:1954
注 册:2008-10-12
收藏
得分:0 
"就是突然发现我在第三个a那里调用不了第二个a"
这句话我想就算人脑有时候都看不明白,能指望电脑看明白?也就是说a是有二义性的,
编译器在遇到这种有二性义的命名时,自然是根据某规则选择一个(这个规则的存在是我猜的,可能有可能并没有)。
你要想调到函数体里定义的a,上面已经说过了,给出域名限定它,否则别无它法。
2009-12-29 12:39
zhaoguoge
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:46
专家分:121
注 册:2009-7-8
收藏
得分:0 
原来无法调用啊~~~~
不好意思。我没对代码写行号,文字表达的有点乱。

可是明明有3个可以区别的域啊:全局,main函数,main函数中的{},我觉得这是一层层的,咋就不能在main函数中的{}里做到输出main函数中不在{}里的那个a呢。

诶~~~C++真难啊……一个域就让人头疼不已
2009-12-29 17:25
wgd123pl
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:23
专家分:24
注 册:2008-8-16
收藏
得分:0 
这是一个常规的问题,当你定义一个局部变量和一个全局变量名字相同时,当函数调用全局变量,将失效(即被局部变量取代)。(如果说得不全面或有错还请各位多多包含。)
2010-01-10 02:56
sirtang
Rank: 4
等 级:业余侠客
帖 子:51
专家分:263
注 册:2010-1-17
收藏
得分:0 
飘过
2010-01-17 13:57
快速回复:怎么在第二个函数快里输出第二个a(值为10)啊
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017992 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved