| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2730 人关注过本帖
标题:嵌套for变量设置的问题
只看楼主 加入收藏
y605302737
Rank: 1
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-2-2
结帖率:81.82%
收藏
已结贴  问题点数:20 回复次数:11 
嵌套for变量设置的问题
1.两个for循环嵌套使用中出现冲突,如果两个循环中都使用i作为变量。则将下划线部分屏蔽不会出现问题,但不屏蔽则出现提示:
1>c:\documents and settings\administrator\my documents\visual studio 2010\projects\test\test.cpp(14): warning C4258: “i”: 忽略 For 循环中的定义;使用封闭范围中的定义
1>          c:\documents and settings\administrator\my documents\visual studio 2010\projects\test\test.cpp(9) : 忽略“i”的定义
1>          c:\documents and settings\administrator\my documents\visual studio 2010\projects\test\test.cpp(6) : 使用“i”的定义

请问下是什么原因??
程序代码:
#include <iostream>
using namespace std;

int main()
{
   for(int i=0;i!=10;i++)
   {
      // cout<<"m == "<<i+1<<endl;
       for(int i=0;i!=5;i++)
       {

           cout<<"i == "<<i<<endl;
       }
       cout<<"i == "<<i<<endl;
   }
    return 0;
}


2.能否在一个for中使用两个循环,如:
int i,m;
const int n=100;
for(i=0,m=0;i!=n,m!=n;i++,m++)
其中循环的次数相同,即都循环100次????
谢谢!!


[ 本帖最后由 y605302737 于 2013-4-1 11:50 编辑 ]
搜索更多相关主题的帖子: warning settings documents 
2013-04-01 10:42
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:0 
红色字体部分在哪里?

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-04-01 11:13
y605302737
Rank: 1
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-2-2
收藏
得分:0 
回复 2楼 peach5460
不好意思,我改成了下划线了,红色字体不知道怎么显示不出来!!
2013-04-01 11:51
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
为什么要写这样的代码?编译器那是在问你到底要使用哪个变量。

授人以渔,不授人以鱼。
2013-04-01 12:10
周骙骙
Rank: 2
等 级:论坛游民
帖 子:7
专家分:23
注 册:2013-3-7
收藏
得分:0 
i重复定义了,第二个循环变量可以用j嘛
2013-04-01 12:53
周骙骙
Rank: 2
等 级:论坛游民
帖 子:7
专家分:23
注 册:2013-3-7
收藏
得分:0 
如果把第二个int i=0改成i=0就是一个死循环
2013-04-01 13:00
jxlcs
Rank: 1
等 级:新手上路
帖 子:30
专家分:1
注 册:2008-7-27
收藏
得分:0 
为什么嵌套循环你要用同一个变量来控制啊
2013-04-02 10:48
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:5 
这样不行的,可以有两个循环变量,但是判断只能有一个,你可以用关系运算符进行连接

Maybe
2013-04-02 22:45
shmilyflf
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:356
专家分:1008
注 册:2012-12-9
收藏
得分:10 
for(i=0,m=0;i!=n,m!=n;i++,m++)这样写是没有问题的。但是它是按最后一个来判断真假的,即这个for中是按m!=n的真假来判断的。i!=n的真假不会影响执行,但是这句会执行,
如果你把i!=n换成++i,那么每次执行这里都会给i加1。
2013-04-02 23:17
y605302737
Rank: 1
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-2-2
收藏
得分:0 
回复 9楼 shmilyflf
谢谢你的回答,那我可不可以这样理解,就是for循环中的判断条件只能有一个?
2013-04-03 16:29
快速回复:嵌套for变量设置的问题
数据加载中...
 
   



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

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