Jestem ciekawy, czy możliwe jest określenie maksymalnego rozmiaru tablicy w C++.Programowo znajdź maksymalny statyczny rozmiar tablicy w C++
#include <iostream>
using namespace std;
#define MAX 2000000
int main()
{
long array[MAX];
cout << "Message" << endl;
return 0;
}
Kompiluje się dobrze, ale następnie segfaults zaraz po uruchomieniu (nawet jeśli tablica nie jest faktycznie odwoływana). Wiem, że to także rozmiar tablicy, ponieważ jeśli zmienię go na 1000000, działa dobrze.
Czy istnieje jakiś sposób zdefiniowania miejsca lub sposób uzyskania #define MAX MAX_ALLOWED_ARRAY_SIZE_FOR_MY_MACHINE_DEFINED_SOMEWHERE_FOR_ME
?
Nie potrzebuję tego do niczego, to pytanie jest ze względu na ciekawość.
chcesz tylko zrozumieć maksymalny rozmiar tablicy w stosie? może rekursja działa dla ciebie? nie w jednej tablicy, ale w połączeniu? – tartar
@tar Co ma zrobić rekursja? –
Ten wpis nie odpowiada na twoje pytanie, ale powinien być interesujący, ponieważ mówi o tym samym problemie z wadą seg: http://stackoverflow.com/questions/851122/large-2d-array-gives-segmentation-fault –