测堆内存的容量

MZJCDD 2008-05-02 04:50:42
#include<iostream.h>
void main()
{int **array;
int i=0;
int sum=0;
array[i]=new int [100];
while(array[i]!=NULL)
{sum+=sizeof(int)*100;
i++;
array[i]=new int [100];
}
for(int j=0;j<i;j++)
delete[]array[j];

}
这个题目是:编写程序,测试堆内存的容量,每次申请一个数组,内含100个整数,直到分配失败,并打印堆容量内存,帮我看看这个程序哪里有错误啊,谢谢
...全文
126 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
昨夜无风 2008-05-03
  • 打赏
  • 举报
回复
array[i]=new int [100]; ???
问题,array没分配,哪来的array[i]?
ttkk_2007 2008-05-02
  • 打赏
  • 举报
回复
先不说你array没有指向,这种方法可以测试堆内存容量?
zdqsm 2008-05-02
  • 打赏
  • 举报
回复
呵呵
支持
单独用指针比用指针的指针好懂多了
且不容易出错些
clhposs 2008-05-02
  • 打赏
  • 举报
回复

#include <iostream.h>
void main()
{int *array[100];
int i=0;
int sum=0;
array[i]=new int [100];
while(array[i]!=NULL)
{sum+=sizeof(int)*100;
i++;
array[i]=new int [100];
}
for(int j=0;j <i;j++)
delete [] array[j];

}
clhposs 2008-05-02
  • 打赏
  • 举报
回复
你虽然定义了int **array 指针的指针 但是 他却只能指向一个因为他只有指向一个的空间

溢出了
clhposs 2008-05-02
  • 打赏
  • 举报
回复
int **array 无空间
jeff_nie 2008-05-02
  • 打赏
  • 举报
回复
关注.

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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