| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 813 人关注过本帖
标题:C++的定义
只看楼主 加入收藏
shaoyuan
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2008-9-7
结帖率:100%
收藏
 问题点数:0 回复次数:5 
C++的定义
#include<iostream.h>
#include<stdlib.h>
void main(){
    int *p;
    p=new int [8];
    for(int i=0;i<8;i++)
    p[i]=i*i;
    p=(int*)realloc(p,12*sizeof(int));
    
    for(i=8;i<12;i++)
    p[i]=2*i;
    for(i=0;i<12;i++)
    cout<<p[i]<<"  ";
    cout<<endl;
    free(p);
}
上面的程序为什么在C—FREE4.0的编译器上不能通过编译呢?
[Error] E:\C编辑器\C-FREE~1\temp\Untitled3.cpp:10: name lookup of `i' changed for new ANSI `for' scoping
[Error] E:\C编辑器\C-FREE~1\temp\Untitled3.cpp:6:   using obsolete binding at `i'



改程序在Microsoft Visual C++ 6.0上能够运行,应该是编译器问题了,多谢大家的帮忙!!!

[[it] 本帖最后由 shaoyuan 于 2008-9-7 12:43 编辑 [/it]]
搜索更多相关主题的帖子: 定义 
2008-09-07 10:30
b3b3baby
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-8-22
收藏
得分:0 
不知道,帮你顶了

出售 FLASH棋牌游戏源码、斗地主、麻将等
适合用于变相赌博,测试购买QQ 51525512
2008-09-07 11:08
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
这涉及到作用域的问题吧...
由于i是在 for(int i=0;i<8;i++)
中定义的,因而引起了,在下面再次使用时的问题...

2008-09-07 11:48
無邪的睡脸
Rank: 2
等 级:等待验证会员
威 望:1
帖 子:344
专家分:13
注 册:2007-9-11
收藏
得分:0 
i具有语句作用域,只在定义的for循环中可见
要么定义在外面,要么下面再定义一个变量
2008-09-07 11:53
xyt_bluesky
Rank: 1
等 级:新手上路
威 望:1
帖 子:27
专家分:0
注 册:2008-8-16
收藏
得分:0 
通过编译错误提示明显可以看得出是那里错的啊!你也是刚学习这门功课的吧!
2008-09-07 12:10
shaoyuan
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2008-9-7
收藏
得分:0 
不好意思啊!这是我从课本上直接打出来的
2008-09-07 12:46
快速回复:C++的定义
数据加载中...
 
   



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

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