Ein Fehler

Wenn du direkt in den Debug-Modus gehst wenn er abstürzt, dann hast du unter anderem einen "Call-Stack" (oder "Aufrufliste" auf dämlich-übersetzt). Da siehst du dann wahrscheinlich ganz oben die tatsächliche Stelle, wo er absemmelt (scheint nicht direkt in deinem Code zu sein) und dann schrittweise nach unten die einzelnen Funktionen, die zu der Stelle führen. Irgendwo müsste da dann eine Datei/Funktion von dir drinstehen. In der Liste drauf doppelklicken, und der Cursor springt an die Stelle, die in deinem Code zu dem Problem geführt hat.
Jetzt kannst du die Variablenwerte zum Zeitpunkt des Aufrufs der Zeile prüfen, ob da seltsame Werte dran sind.
 
Also bei mir gibt er dann an das in der Zeile (in Fett) das Problem hat aber das ist neuland für mich bis jetzt hatte ich solche Probleme noch nicht und brauchte den Debug- Modus nicht.

// CString
_AFX_INLINE CStringData* CString::GetData() const
{ ASSERT(m_pchData != NULL); return ((CStringData*)m_pchData)-1; }
Kann es sein das Meine Deklaration nicht in ordnung ist
Ich hab in der Header folgendes stehen:
datenfeld **datfeld;
long *m_arrnr;
long *m_arre;
int *m_arrno;
und im Programm dann
m_arrnr = (long *) malloc( m_count * sizeof(m_arrnr) );
m_arre = (long *) malloc(m_count * sizeof(m_arre) );
m_arrno = (int * ) malloc (m_count * sizeof(m_arrno) );
datfeld = (datenfeld **) malloc ((m_count + 1) * sizeof(datenfeld *));
Ich will eigentlich damit bezwecken das die Zeiger m_arrnr... eine Array größe von m_Count bekommet und datfeld eine Array größe von m_Count+1
vielleicht liegt es ja daran. Ich hab das aus dem nets und es passt hier nicht.

Kann man sein Programm nicht schrittweiße ausführen lassen wie in Visual Basic

gruß Tetsuya
 
Hmm, das ist ein ASSERT, wo der hängen bleibt.
m_pchData vom CString ist NULL.

Die Funktion, die da vom CString benutzt wird, da ist irgendwas mit dem CString nicht sauber oder die Parameter sind falsch.

Der Debugger ist ein Gottesgeschenk, benutz den unbedingt. Kannst du den Call-Stack posten? Und den obersten Code-Ausschnitt von deinem Code, wo das Problem auftritt?
 
Du meinst doch das ich dir den Text aus dem Fenster der Disassemblierung
schicke. Gibt es da einen Trick wie ich das in einem gescheiten Format bekomme?
Oder meinste noch was ganz anderes
 
Falls das Fenster "Aufrufliste" nicht da ist, Debug->Fenster->Aufrufliste

Da ist eine Liste drin, einfach alles selektieren und copy.
 

Neue Beiträge

Zurück