![]() |
C++ Speicher Zugriffsverletzung
Hallo,
ich bekomme beim benutzen eines Programms, welches ich unter Vistual Studio 2010 in c++ geschrieben habe eine Fehlermeldung bezüglich einer Zugriffsverletzung beim Schreiben. Nachdem was ich bisher herausgefunden habe, scheine ich irgendwas mit den Pointern falsch gemacht zu haben. Das ist mit sicherheit ein Anfängerfehler, aber ich finde ihn einfach nicht. Es geht darum int Werte in einer linearen Liste zu speichern und verarbeiten. Hier der relevante Code: Code:
... Unbehandelte Ausnahme bei 0x00f43573 in sortlist.exe: 0xC0000005: Zugriffsverletzung beim Schreiben an Position 0x00000000." Position 0x00000000 kommt mir unrealistisch vor. Da ich jedoch Neuling auf dem Gebiet bin, weiß ich trozdem nicht was nun falsch ist. Ich bitte um Ratschläge. |
Debugger so einstellen, dass er wenn Exceptions auftreten anhält. Dann kannst du im Callstack sehen welche Funktion die Exception auslöst.
|
Gut damit konnte ich das Problem schonmal lokalisieren, danke. Aber ich kann leider nicht herausfinden was das Problem ist. Ich habe die Zeile, an der der Debugger stopt, im Startpost Quelltext rot makiert. Zudem sehe ich noch folgende Info:
[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] Damit kann ich aber nichts anfangen. EDIT: Ich glaube mein Programm kann nicht auf den Inhalt meines first structs zugreifen. Hm...ich probier mal bisschen rum. Wenn mir jemand helfen kann, nehme ich gerne Ratschläge entgegen. |
wie wärs mit
Code:
first = malloc(sizeof(struct storage)); |
Habe es mitlerweile gelöst indem ich einen neuen Konoten mit meinem gewünschten Inhalt erzeugt, und diesen dann dem Anker "first" zugewiesen habe. Danke für die Tips.
|
Es wäre für andere hilfreich wenn du den funktionierenden Code poste würdest.
|
Gerne. Hier der funktionierende Code zum Anhängen von Integer Werten an eine lineare Liste:
Code:
... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:37 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.