Hallo, arbeite gerade mit ARM-Prozessor. Habe eine Struktur A und ein Array von Strukturen B. Diese enthalten jeweils ein paar Zeiger auf float. B enthält relativ große Arrays die ich über malloc alloziere. Seltsamerweise benutzt beim 2 Objekt von B ein Element den Speicherbereich von Struktur A und überschreibt mir ein Element in Struktur A. Eigentlich dürfte das doch gar nicht sein. Habe die Elemente von Struktur A nicht gefreet. Hat einer vielleicht einen Tip woran das liegen könnte? Grüße, Eric
Eric schrieb: > Eigentlich dürfte das doch gar nicht sein. Klar kann das, wenn die Pointer-Ziele überlappen. Schau dir mal im Debugger die Pointer an, auch nach der malloc()-Allokation. Wenn der Pointer beim Zugriff nicht mehr auf das zeigt, wie das auf das er ursprünglich (nach dem malloc) zeigte, verwende einen Watchpoint um herauszufinden wann er verändert wird.
Du hast einen amoklaufenden Pointer. Dazu zählt z.B. auch ein Index, der über das letzte Arrayelement hinausgeht...
Hallo, ja danke erstmal. An Indexproblem habe ich auch schon gedacht. Aber bis jetzt nichts gefunden. Ich werde nochmal ausgiebig suchen. Gruß
Hallo, hab mein Fehler gefunden. Es wurde versehentlich ein Pointer ins EPPROM geschrieben, den ich dann später wieder ausgelesen hab, Trotzdem danke. Grüße
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.