txt文件中读取一个4000*4000的二维数组
我想从txt文件中读取一个4000*4000的二维数组,用fopen,fscand这些函数编译和链接都能通过,但是一运行就提示溢出,请高手帮忙,如果这种方法本身不能,请问可以用什么别的方法,感激不尽 define nodes 4000
#define CDOOR 100
#define maxint 10000
int main()
{
clock_t start,end;
start = clock();
int i,j;
int l=0;
FILE *fd;
int d[nodes][nodes];
fd=fopen("cost.txt","r");
if (fd==NULL)
{
printf("读取文件失败");
system("pause");
exit(0);
}
else
{
for(j = 0 ; j < nodes ;j++)
{
for(i = 0 ; i < nodes; i++)
{
fscanf(fd,"%d",&d[i][j]);
if ((d[i][j]<CDOOR)&&(i<j))
{
l=l+1;
}
}
}
fclose(fd);
}
printf ("满足阈值限制的总数l=%d\n",l);
end = clock();
double TIM = (double)(end - start)/CLK_TCK;
cout<<"总耗时:"<<TIM<<endl;
return l;
}
上面这个是其中的一个操作些的代码,这个程序就跑不起来,一运行就溢出了,不知道是什么原因????
有人提示我说是不能直接定义这么大的数组,那位高手知道一下怎么定义动态数组。。。