如下代码,我在 vs2015 中,for 循环 1000 遍,没有问题,10000 遍就报错
大家觉得是哪里的问题呢?
#include <stdio.h>
void f(char* p)
{
delete[] p;
p = new char[20000];
}
int main()
{
for (int i = 0; i < 10000; i++)
{
char *p = new char[2];
f(p);
delete[] p;
}
getchar();
return 0;
}
按理说以上代码只是在循环创建 20000 个字节的堆内存,创建了又销毁,不应该出问题才对啊。
大家有什么看法?