Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 18:12

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Speicherreferenz verändert sich unabsichtlich

Discussion on Speicherreferenz verändert sich unabsichtlich within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
C_O_R_E's Avatar
 
elite*gold: 0
Join Date: Jul 2014
Posts: 264
Received Thanks: 54
Speicherreferenz verändert sich unabsichtlich

Ich habe gestern angefangen aus langeweile zu programmieren.

Also fing ich mit einer Implementierung eines einfachen Stacks an. Alle Elemente des Stacks sollen Werte vom Typ int speichern.

Es soll immer wieder ein Wert auf den Stack legen und schauen, welches Element ganz oben auf dem Stack ist. Den Speicher wieder freigeben und schauen, welches Element nun auf dem Stack liegt.

Also erstellte ich Zeiger, die auf die jeweiligen Elemente zeigen. Sobald die Funktion pumped_it_up aufgerufen wird, verändert sich der Zeiger und zeigt auf etwas anderes. Wenn man nun alle Elemente speichert, sind sie nicht mehr zugreifbar. Zunächst dachte ich, ich sei nur müde, aber auch jetzt nach einem guten Schlaf, sehe ich meinen Fehler/misslungen Gedanken nicht.

Ich habe den Fehler eingegrenzt und immer wieder sequentielle Ausgaben gemacht und es liegt an der pumped_it_up - Funtkion aber ich begreife es einfach gerade überhaupt nicht. Ich stehe total auf dem Schlauch...



C_O_R_E is offline  
Old 03/13/2015, 16:52   #2
 
Logtetsch's Avatar
 
elite*gold: 192
Join Date: May 2009
Posts: 2,227
Received Thanks: 3,262
Code:
void push(int val) {
     Element_stack new_elem(val);
     if(head == NULL)
          head = &new_elem;
     else {
          new_elem.set_next(head);
          head = &new_elem;
}
new_elem wird beim verlassen der Funktion zerstört.
Ich hab deinen Code nur schnell überflogen, allerdings sollte das passen:

Code:
if(!head)
     head = new Element_stack(val);
else{
     Elemt_stack* pTmp = head;
     head = new Element_stack(val);
     head->set_next(pTmp);
}
Logtetsch is offline  
Thanks
2 Users
Old 03/13/2015, 21:23   #3
 
C_O_R_E's Avatar
 
elite*gold: 0
Join Date: Jul 2014
Posts: 264
Received Thanks: 54
Am liebsten würde ich mein Kopf in Sand stecken.... Das ist so was von nachvollziehbar, da denkt man einmal nicht an den Gültigkeitsbereich und dann passiert das.

Die Lösung hättest du nicht wirklich angeben müssen, aber dennoch vielen vielen Dank.
C_O_R_E is offline  
Reply


Similar Threads Similar Threads
Was hat sich bei Metin2 verändert?
07/15/2013 - Metin2 - 7 Replies
Ich hab vor ein paar Jahren aufgehört Metin zu zocken. Das letzte mal hab ich auf einem P-Server gezockt und das vor einem Jahr. Nun habe ich festgestellt, dass mein Server garnicht mehr vorhanden ist und mein Char auf dem Server ebenfalls. Hab ich ein Recht auf Rückerstattung oder so? Ich würd nämlich gern wieder mit meinem Char zocken :D.
Wie hat es sich Verändert?
09/24/2011 - 4Story - 6 Replies
Hey ho. Ich wollte allgemein mal Wissen, was sich in 4 Story so getan hat. Ich war Spieler von der ersten Stunde an und hab dann vor ca. einen dreivirtel Jahr aufgehört. Es waren mir zu viele Hacker und Kloner und im allgemeinen war das Spiel einfach nicht mehr so toll, Patches mal aller halben Jahre einer, wenn überhaupt. Wie hat es sich bis heute verändert? Ist es immer noch so schlimm mit dem Hacken? Rennen so gut wie alle mit +22 Aufwärts rum und es gewinnt der, der die meisten...
db exp verändert sich
07/11/2011 - Metin2 Private Server - 0 Replies
LoL .. eigentlich habe ich mit sowas nie Probleme aber verändere ich die exp mancher Troll Mobs, lasse den server noch extra lange an und stoppe den server statt direkt reboot verändert sich die exp dieser Mobs immer in eine andre Zahl, welche immer gleichbleibt. Bei andren Mobs ist es nicht so und die exp Werte sind recht niedrig. Woran liegt das? Will mich die Db ärgern??
Was hat sich verändert?
03/14/2011 - Metin2 - 17 Replies
Moin, Ich habe seit ca. Oktober kein Metin2 mehr gespielt, deswegen frage ich: was ist anders? Mfg 8zeichen
WoW - Was hat sich verändert
06/22/2009 - World of Warcraft - 9 Replies
hiho, ich spiele mit dem Gedanken wieder ins wow arena business einzusteigen... :) Gab es gravierende Änderungen im Gameplay ? (Auf arena bezogen) Hat man sich schnell wieder eingelebt bzw sind viele neue Skills dazugekommen die man beherrschen muss ( also die von den Gegnern). Es geht mir hier nicht um low arena sondern will ich wieder an die alten Erfolge anknüpfen ( top5). Wieso sind die topratings jetzt 2,6-2,8k wo sie früher meistens im berreich 2,4k lagen? Wie lang brauch ich...



All times are GMT +1. The time now is 18:14.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.