Hallo an alle,
ich habe folgendes Problem:
Ich habe ein C-Programm, dass an mehreren Stellen durch return/exit beendet werden kann. Ich möchte aber, dass nach dem return noch ein paar Befehle ausgeführt werden, dafür gibt es die atexit-Funktion. Nun benutze ich etwa folgendes Konstrukt:
void Finite(void); char * pTest;
int main(void) { ... atexit(Finite); pTest=malloc(500); ... return -3; }
void Finite(void) { free (pTest); }
Das Programm läuft auch einwandfrei bis zum return, danach komme ich nicht mal mit einem Debugger weiter. Ohne Debugger wird das Programm nicht beendet und hängt.
<Auf Anregungen wartend>
Roland Müller