Debug Assertion Failed! (Was ist das?.)
-
Hallo ich habe ein runtime error.
Beschreibung.
Programm: Exe.exe
File: fopen.c
Line: 54
Expresion: *file != _T('\0');Weisss einer was ich dagegen machen kann?, worum das ausgelöst wird?. Und warum fopen.c ich benutze doch nur c++ zeugs (bibliotheken).
-
Hallo,
zeig mal den Dateihandling-Code deines Programms.
-
Master User schrieb:
Hallo ich habe ein runtime error.
Beschreibung.
Programm: Exe.exe
File: fopen.c
Line: 54
Expresion: *file != _T('\0');
Weisss einer was ich dagegen machen kann?, worum das ausgelöst wird?. Und warum fopen.c ich benutze doch nur c++ zeugs (bibliotheken).schau mal, was assert macht. in assert schreibst du eine bedingung rein, zum beispiel
assert(index>aktSize);
und dadurch wird immer, wenn der compiler die zeile ausführt, getestet, ob die bedingung wahr ist. ist sie wahr, passiert nix. alles ok.
ist sie aber falsch, schreibt der rechner
Programm: test.exe
File: main.cpp
Line: 10
Expresion: index>aktSize;
auf den bildschirm und beendet sich.das ist prima zum fehlersuchen. du weißt, welche datei und welche zeile und welche bedingung es war.
nu ist dir passiert, daß du ein assert ausgelöst hast, das du gar nicht selber geschrieben hast. nein, es war der compilerbauer, als er die funktion fopen geschrieben hat. und die bedingung sagt mir, daß du versucht hast, fopen aufzurufen mit "" als dateinamen.
kann auch sein, daß di nicht direkt forpen aufgerufen hast, sondern ifstream("") oder irgendwas anderes, das intern selber fopen aufruft.
-
Ja hast recht ich hatte ausfersehen ein string gelöst und gleich mit NULL gesetzt also "". Und später damit eine datei geofnet. Man bist du cool