Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

ich hab folgenes Problem: Schreibe gerade ein c Programm, dass über fastcgi eine homepage generieren soll. klappt auch alles soweit(post,get,cookie,mysql...).Soviel zum Projekt. Die Sache ist nun, dass ich einen Speciherzugriffs Fehler bekomme wenn ich einen weiteren Pointer initalisiere egal wie ich diesen nenne bzw. auf was ich ihn zeigen lasse.

Habe bis jetzt so ziemlich alles per Pointer realisiert und es funktionierte auch. Weiss leider nicht genau wo pointer gespeichert werden. Kann es sein, dass ich zuviele Pointer initalisiert habe oder seh ich den Wald vor lauter Bäumen nicht?

Gruss und Danke

Torgi

edit: Achso System ist Gentoo 64bit mit nginx+mysql.

Geschrieben (bearbeitet)
Ich vermute eher, dass du irgendwo über die Grenzen eines reservierten Speicherbereichs hinausschreibst, und dir damit den Stack oder Heap zerschießt.

Vielleicht habe ich mich nicht ganz richtig ausgedrückt. Das Programm läuft ohne Probleme. Auch schon über längeren Zeitraum mit vielen Anfragen getestet. Aber sobald ich einen neuen Pointer dazuschreibe schmiert es sofort ab. Ich denke das mit der dynamischen speicherverwaltung hab ich ganz gut drauf, deshalb versteh ich das auch nicht. Meine Frage ist vielmehr, ob es eine solche Problematik gibt, da ich dazu im Netz nichts dazu gefunden habe?

Grad endeckt, wenn ich einen alten char Pointer in ein Array umschreibe kann ich wieder einen neuen Pointer initalisieren.

Bearbeitet von torgi
Geschrieben
Vielleicht habe ich mich nicht ganz richtig ausgedrückt. Das Programm läuft ohne Probleme. Auch schon über längeren Zeitraum mit vielen Anfragen getestet. Aber sobald ich einen neuen Pointer dazuschreibe schmiert es sofort ab.
Ja, das ist das tückische an solchen Fehlern: Sie müssen sich nicht auswirken, und wenn sie es doch tun, ist die Stelle, an der sich der Fehler bemerkbar macht, unter Umständen eine ganz andere als die, wo der Fehler verursacht wird.

Grad endeckt, wenn ich einen alten char Pointer in ein Array umschreibe kann ich wieder einen neuen Pointer initalisieren.
Dann bin ich mir zu 99% sicher, dass du dir irgendwo den Speicher zerschossen hast.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...