Informatică, întrebare adresată de bencheacatalin, 9 ani în urmă

De ce nu pot declara in C++ o matrice de 1000 pe 1000 de elemente? (int a[1000][1000];)
Nu merge nici int, nici long, float sau altceva.

Răspunsuri la întrebare

Răspuns de JolieJulie
0
am verificat ... nu accepta matrice mai mare de 721x723

deci maxim e int a[721][723]....ce-i mai mult de-atat da programul peste cap
Răspuns de NuPotSaStiuTot
0
cu: int *mat = new int[1002001] ai o matrice cu [1000][1000] integer. 
pentru a[i][j] scrieti a[i*1001 + j]

nu uitați: delete[] mat;

NuPotSaStiuTot: dece? int a[100][100] ocupă locuri în stivă. int *a = new ... ocupă locuri în mormanul. stivă este mic! mormanul este la fel de mare ca memoria
Alte întrebări interesante