Guybrush Threepwood Geschrieben 17. Januar 2003 Geschrieben 17. Januar 2003 Hi, woran kann es eigentlich liegen, dass beim löschen von reserviertem Speicher Fehler auftreten? BSP.: char* lpPointer; lpPointer = new char[10]; strcpy(lpPointer,"Test"); ... ... ... delete lpPointer; //Fehlermeldung "Damage: after normal Block (#55) at 0x00... [/PHP] Mir ist es nämlich schon öfters passierts dass ich so einen Pointer nicht wieder löschen konnte, obwohl der Inhalt noch gültig war. Gruß Guybrush
Klotzkopp Geschrieben 17. Januar 2003 Geschrieben 17. Januar 2003 Diese Meldung ist normalerweise ein Zeichen dafür, dass du über das Ende des reservierten Speichers hinaus schreibst.
Guybrush Threepwood Geschrieben 17. Januar 2003 Autor Geschrieben 17. Januar 2003 Ok, ich hab mir meine Speicherreservierung nochmal angeschaut und den Fehler gefunden. Der benötigte Speicher wurde mit strlen() (das ja den abschließenden NULL Character nicht mitzählt) ermittelt und ich hab vergessen +1 zu schreiben. Dummer Fehler, der mir anscheinend schon öfters passiert ist:rolleyes: Danke Klotzkopp! Gruß Guybrush
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden