C++ 测试系统允许分配的最大堆内存
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 测试系统允许分配的最大堆内存相关的知识,希望对你有一定的参考价值。
#include<stdio.h>
#include<stdlib.h>
unsigned int maxnum = 0;
int main()
{
unsigned int blocksize[3]={1024*1024,1024,1};
int i,count;
for (i = 0; i < 3; i++)
{
for(count=1;;count++)
{
void* pmalloc = malloc(maxnum + blocksize[i] * count );
if (pmalloc)
{
maxnum = maxnum + blocksize[i] * count;
free(pmalloc); //为什么要在这里释放??? pmalloc是空指针了
}
else
{
//free(pmalloc); //为什么不在这里释放内存???
break;
}
}
}
printf("maxium malloc size is %u bytes\n",maxnum);
return 0;
}
以上是关于C++ 测试系统允许分配的最大堆内存的主要内容,如果未能解决你的问题,请参考以下文章