ALL THE LIFE,WILL BE LONEY

DO HARD

compiler limit:internal heap limit reached;use /zm to specify a higher limit

c++编译错误:
悬赏分:5 - 解决时间:2010-8-6 12:44
compiler limit:internal heap limit reached;use /zm to specify a higher limit
请问诸位高手该如何解决此问题 
问题补充:
1楼仁兄什么意思,是数组太多了吗?还是数组元素个数设的太大?我必须得使用那么多数组的话,该怎么解决?
最佳答案
检举   
意思是超过内部默认分配的堆的限制
解决办法如下:在VC ++ 6.0环境下:project ——> setting ——>c/c++   在project   options   的最后一个/c前面加上/Zm200
然后逐步增加,如/Zm300 //   ZmXXX   xxx表示你想要自定义分配的内存大小   最大为2000   相当于2100m.
如果必须得使用那么多数组的话,应该使用堆中的内存,动态分配的。
int* intarray = new int(1000000);
使用完之后记得释放内存
delete [] intarray;
intarray = NULL;
如果用c语言的话用malloc分配/free释放资源
int* intarray = (int *) malloc(1000000*sizeof(int));
free(intarray);
intarray = NULL; 
 0

回答者: hehebushiwo - 二级   2010-7-9 14:06

提问者对于答案的评价:
太感谢了!

posted on 2010-08-18 13:16 jasperu 阅读(1411) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航:   博客园   博客园最新博文   博问   管理