Hey, hätte nochmal eine Frage zur Speicherverwaltung bzw ob Ich das so richtig verstanden habe:
Die Funktion malloc bzw calloc gibt ja einen Zeiger wieder, der zeigt dann auf das erste Element bzw den ersten Wert des reservierten Speichers, jetzt in diesem Beispiel:
Jetzt wird Speicherplatz im Heap für 2 Integer (8 Bytes) reserviert und der Zeiger zeigt auf das erste Element, wenn behaelter++; aufgerufen wird steigt der Zeiger um 4 Bytes (int) und zeigt auf den nächsten Integer.
So hab ich das jetzt gedacht, aber ich krieg immer eine Fehlermeldung bzw das Programm stürzt ab und als zweiter Wert wird mir dann 0 ausgegeben.
Wo ist jetzt der Denkfehler?
Die Funktion malloc bzw calloc gibt ja einen Zeiger wieder, der zeigt dann auf das erste Element bzw den ersten Wert des reservierten Speichers, jetzt in diesem Beispiel:
Jetzt wird Speicherplatz im Heap für 2 Integer (8 Bytes) reserviert und der Zeiger zeigt auf das erste Element, wenn behaelter++; aufgerufen wird steigt der Zeiger um 4 Bytes (int) und zeigt auf den nächsten Integer.
So hab ich das jetzt gedacht, aber ich krieg immer eine Fehlermeldung bzw das Programm stürzt ab und als zweiter Wert wird mir dann 0 ausgegeben.
Wo ist jetzt der Denkfehler?