Tengo curiosidad de saber si es posible determinar el tamaño máximo que una matriz puede tener en C++.Encontrar programáticamente el tamaño máximo de matriz estática en C++
#include <iostream>
using namespace std;
#define MAX 2000000
int main()
{
long array[MAX];
cout << "Message" << endl;
return 0;
}
Esto compila bien, pero luego segfaults tan pronto como lo ejecuto (a pesar de matriz no se hace referencia en realidad). Sé que es el tamaño de la matriz también, porque si lo cambio a 1000000 funciona perfectamente.
Entonces, ¿hay alguna definición en alguna parte o alguna forma de tener #define MAX MAX_ALLOWED_ARRAY_SIZE_FOR_MY_MACHINE_DEFINED_SOMEWHERE_FOR_ME
?
Realmente no necesito esto para nada, esta pregunta es por curiosidad.
¿quieres entender el tamaño máximo de matriz en la pila? tal vez la recursión funcione para ti, entonces? no en una sola matriz sino en forma combinada? – tartar
@tar ¿Qué tiene que ver la recursión con esto? –
Esta publicación no responde a su pregunta, pero debería ser una lectura interesante porque habla sobre el mismo problema de fallo seg: http://stackoverflow.com/questions/851122/large-2d-array-gives-segmentation-fault –