Array
-
Hallo Leute,
ich schreibe ein Programm in "C". Ich definiere 20-mal statisches 2-dimensionales Array:
Array1[1000][10], Arra2[1000][10], ... Arra20[1000][10]. Ist es OK so?
Für eine Hilfe wäre ich sehr dankbar.NIKI
-
wiso machst du das 20 mal?
mach doch gleich ein 3d-array statt 20 mal ein 20d-arrayübrigens musst du aufpassen das du dir den stack nicht zu stark zumüllst... bei arrays in der grössenordnung sollte man imho überlegen die auf dem heap anzulegen
-
Warum soll man aufpassen?
Danke
Niki
-
auf dem stack hast du nicht gerade so viel speicher den du verballern kannst, wo hingegen wenn du dynamsich allokierst dir ja fast der komplette ram zu verfügung steht...
probier mal das hier auszuführen
int main(){char x[10000000];}
wenns nicht abschmiert häng noch ne null ran.... dein stack wird dicht sein und das programm schmiert ab.
-
Aber wenn das Programm nicht abschmiert und läuft durch?
Noch mal Danke
Niki
-
Aber wenn das Programm nicht abschmiert und läuft durch
kann schon sein das dein proggie so erstmal läuft... packst du allerdings den spass in ne funktion die du später mal wiederverwenden willst, kannst du pech haben das du bereits den stack schon mit anderen dingen zugemüllt hast.. der aufruf dieser funktion kann dann das zünglein an der waage sein, dass ihm den rest gibt...