关于使用cout输出动态二维数组的问题

nscboy 2004-03-30 04:22:36

mmmcd(超超) 提供动态生成二维数组的方法,
#include <string>
#include <iostream>
#include <stdio.h>
#include "windows.h"
using namespace std;

int main(int argc, char* argv[])
{
int **a=0;
int n=10,m=20;

// cout<<888<<" " <<m<<endl;
//建造
a=new int*[n];
a[0]=new int[n*m];

for(int i=1;i <m;i++)
a[i]=a[i-1]+m;
//初始化
for(i=0;i<n;i++){
for(int j=0;j<m;j++){
(a[i])[j]=i+j*2;
}
}
//打印
for(i=0;i<n;i++){
for(int j=0;j<m;j++){
int iii = (a[i])[j];
printf("%02d ",iii);
//cout<<iii<< "" ;//如果上面cout注释掉,则这个会报错
}
cout<<endl;
}
return 1;
}

在使用cout进行输出时,似乎存在一定的问题,如果上面cout(在new前面的)一行注释掉,那么下面一行如果用cout输出在VC6.0+win2000sp会编译好的程序会报告运行时错误.
1.请问这是什么问题
2.在其它编译器上是什么结果
...全文
247 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
nscboy 2004-06-26
  • 打赏
  • 举报
回复
我要结贴了,分全给你了.谢谢
kaphoon 2004-06-21
  • 打赏
  • 举报
回复
#include <stdio.h>//改为#include<cstdio>
#include "windows.h"//如果你已经有了界面,那么很难再在console上输出结果

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧