Ich habe eine Codezeile, die mein Programm im Release-Modus abstürzt, aber nicht im Debug-Modus ...Pointer Vergleich Absturz mein Programm
if((DWORD)pPrev < (DWORD)pBlock && pPrev->pList == &gFreeList)
ich die Adressen der Zeiger zu vergleichen, um DWORD gegossen. .. In diesem if-Block wird der vorherige Knoten den aktuellen Knoten akkumulieren, aber nur, wenn seine physikalische Adresse niedriger als der aktuelle Block ist und er bereits frei ist ... Der Blockcode ist nicht das Problem. Es wird nicht einmal den Block betreten. Es stürzt beim Vergleich der Zeiger ab.
Der Code funktioniert perfekt im Debug-Modus, so dass ich ihn im Debug-Modus nicht zum Absturz oder sogar Fehlfunktion bringen kann, um zu sehen, was vor sich geht ... Ich sehe nicht, was damit nicht stimmt. Irgendwelche Ideen?
Wenn es hilft, ich bin mit VC6 für die Entwicklung von Prototypen (einfach, weil der IDE ist weniger ressourcenintensiv) ...
Dank
Sie wissen, VC6 ist berüchtigt für unglaublich buggy. – Puppy