| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 928 人关注过本帖
标题:变量定义语句放置的位置问题
只看楼主 加入收藏
房屋的一角
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-11-20
收藏
 问题点数:0 回复次数:5 
变量定义语句放置的位置问题
#include <iostream>
#include<cstdlib>
using namespace std;
void main()
{
        int n=5;    for(int i=0;i<5;i++) cout<<'*'<<' ';
    cout<<endl;
    for(int h=0;h<4;h++)
    {/* int n=5; */     //变量定义语句位置不同,输出结果也不同
        n--;
        for(int j=4;j>n;j--) cout<<' ';
        for(int i=1;i<=5;i++) cout<<'*'<<' ';
        cout<<endl;
    }
  
   
}
在以上程序中,“int n=5”放置位置不同,会产生皆然不同的输出效果,这是为什么
搜索更多相关主题的帖子: 变量 语句 定义 位置 
2008-11-25 18:09
p1s
Rank: 4
等 级:贵宾
威 望:10
帖 子:454
专家分:3
注 册:2005-11-4
收藏
得分:0 
因为变量有作用域和可见性。
一般情况下变量的作用域为声明处至处于声明处的同层“}”。
当然某些时候作用域和可见性还会和编译器有关。
如果LZ注释的那句语句放在那里,那么最开始的int n=5;就不可见了,所以结果会有所不同。
具体LZ可以参考《易学C++》第11章。
2008-11-25 20:01
房屋的一角
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-11-20
收藏
得分:0 
pls兄弟,你好.关于你说的这方面的内容具体是说些什么,我学的C++语言基础教程.不知道是否能这本书里看到.谢谢了!
2008-11-26 19:43
h13077395959
Rank: 1
等 级:新手上路
威 望:1
帖 子:26
专家分:0
注 册:2007-11-16
收藏
得分:0 
汗..........
2008-11-26 20:17
hitcolder
Rank: 1
等 级:新手上路
威 望:1
帖 子:124
专家分:0
注 册:2008-10-28
收藏
得分:0 
回复 楼主 房屋的一角 的帖子
基本每本书都会有作用域的介绍吧 ,不过不会作为重点来说,可能整本书就那么一点点来做个简单的介绍,  2楼的介绍已经很明白了,就是个大括号的问题,建议楼主以后编程序时整个过程都会用到的变量已开始久声明出来比较好啊

不要在你的智慧中夹杂傲慢,也不要使你们的谦卑缺乏智慧的成分。
2008-11-27 09:37
房屋的一角
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-11-20
收藏
得分:0 
谢谢各位了!
2008-11-27 12:47
快速回复:变量定义语句放置的位置问题
数据加载中...
 
   



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

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