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...


Anmelden zum Antworten