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]]