动态分配完了二维数组,该如何从用户录入数组元素值

来源:百度知道 编辑:UC知道 时间:2024/05/06 07:41:54
我这样写,出现运行时错误
int m;
cin>>m;
int n;
cin>>n;
int **a =0;
a= new int*[m];
for(int i=0;i<m;i++)
a[i] = new int [n];
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
cin>>a[i][j];

//i重定义了
int m;
cin>>m;
int n;
cin>>n;
int **a =0,i,j;
a= new int*[m];
for(i=0;i<m;i++)
a[i] = new int [n];
for(i=0;i<m;i++)
for(j=0;j<n;j++)
cin>>a[i][j];

没有错误的啊
怎么会是出现运行是错误呢 编译通过了?
如果说是有的编译器认为for中定义的i j不是局部语句块的 就会出现ij重定义(VC6.0就是如此)这在编译的时候就会提示的
怎么都不会是运行时错误的

我运行了你的代码 没有错误
你用的什么环境

第二个 for(int i )中的int去掉