Avatar billede mrfux Nybegynder
23. juni 2005 - 17:47 Der er 5 kommentarer og
1 løsning

max størrelse på to-dimensionelle arrays?

Hej
Jeg har et program i C++, som giver segmentation fault, hvis de to-dimensionelle int arrays bliver større end ca 500x500. Er der en max størrelse på to-dimensionelle int arrays eller ligger fejlen i programmet.
på forhånd tak
Avatar billede arne_v Ekspert
23. juni 2005 - 17:53 #1
det er et compiler/platform problem

ofte hjælper det at gøre det store array til en global variabel (udenfor funktioner)
eller at allokere det dynamisk (hmm - det sidste er faktisk svært med 2D)

fordi der er tit restriktioner på lokale variable som allokeres fra stak
Avatar billede segmose Nybegynder
24. juni 2005 - 09:01 #2
512x512 = 2^18
2^18 * sizeof(int) = 2^22 = 4 MB
hvilket ikke er totalt urimeligt.

Enten har du mange af dem eller der er en begrændsning på stack.
Er de allokerede eller på stack, nogen specielle allokerings parametere brugt?
Vis hellere et exemple.
Avatar billede segmose Nybegynder
24. juni 2005 - 09:05 #3
hehe oops.
2^18 * sizeof(int) = 2^20 = 1 MB
Avatar billede arne_v Ekspert
24. juli 2005 - 15:49 #4
mrfux ?
Avatar billede mrfux Nybegynder
22. november 2006 - 15:18 #5
Yes. Undskyld. Måske I begge skal have point...
Avatar billede arne_v Ekspert
23. november 2006 - 01:09 #6
et svar fra mig
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester