8 * 10^9 int 배열이 필요합니다 .... 얼마나 많은 메모리가 프로그램에 malloc (SIZE_MAX)의 메모리가 한계가 있다는 것을 알고 있지만 그것을 변경하는 방법이 있습니까? gcc 4.6 (mingw)을 사용하고 있습니다. Thx 사전에.8 * 10^9 int 메모리를 어떻게 malloc 할 수 있습니까?
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j;
int m=2000*2000,n=2000;
int ** matrix;
matrix = malloc(m * sizeof(int *));
for (i = 0; i < m; i++)
matrix[i] = malloc(n * sizeof(int));
puts("check point1\n");
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
matrix[i][j]=5000;
puts("check point2\n");
int * matrix2;
matrix2 = malloc(m * sizeof(int));
return 0;
}
여러 부분으로 나눌 수 있습니까? – Brian
32GB의 RAM이 있다는 것을 알고 있습니까? – KeatsPeeks
네,하지만 그것을 피하고 싶습니다 방법이 있다면 – user1740587