我猜应该是空间不够。
int** p = new int*[100000];
for (int i = 0;i < 100000;i++)
{
p[i] = new int[100000];
}
for (int i = 0;i < 100000;i++)
{
for (int j = 0;j < 4;j++)
{
p[i][j] = 1;
}
}
0x7715B502 处(位于 c++实验(矩阵).exe 中)有未经处理的异常: Microsoft C++ 异常: std::bad_alloc,位于内存位置
我最开始用的是 栈 后来用堆 发现也不行,请问有人能帮我一下吗。。谢谢!!
#include<stdio.h>
#include <malloc.h>
#include <memory.h>
int main(){
int* value[100000];
for (int i = 0;i < 100000;i++)
{
value[i] = (int *)malloc(100000*sizeof(int));
printf("index %d over\n", i);
}
/*
for (int i = 0;i < 100000;i++)
{
for(int j = 0; j < 100000; j ++){
value[i][j] = 20;
}
}
for (int i = 0;i < 100000;i++)
{
for(int j = 0; j < 100000; j ++){
printf("index %d value:%d\n", i * 100000 + j, value[i][j]);
}
}
*/
printf("over\n");
return 0;
}
创建没问题,用起来很累