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
Kann es sein, dass ich zuviele Pointer initalisiert habe
Ich vermute eher, dass du irgendwo über die Grenzen eines reservierten Speicherbereichs hinausschreibst, und dir damit den Stack oder Heap zerschießt.
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.

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 erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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...