ausgabe auf stderr nach freopen nicht mehr möglich ?
-
hi,
ich habe stderr mit FILE* umleitung = freopen(...
umgeleitet, um die ausgaben in eine datei zu schreiben.
das funktioniert soweit.
umleitung habe ich dann mit fclose(umleitung ) geschlossen, um wieder auf dem bildschirm über stderr ausgeben zu können.
bloss hinterher gehen die ausgaben auf stderr nicht mehr. wieso ?
-
hast du stderr wieder auf die alte Adresse gesetzt?
-
wie geht denn das ?
-
Die alte Adresse vor freopen in nem anderen Pointer speichern.
-
ja, also die alte adresse vor freopen ist stderr.
bloss, wie mache ich die wieder auf
-
für Windows findest du hier 2 Möglichkeiten: http://c-plusplus.net/forum/viewtopic-var-t-is-209314.html
-
File *temp = stderr; freopen(..);
wäre, was ich versuchen würde, aber ich habe noch nie mit freopen gearbeitet, von daher ka, ob das klappen würde.
"The original stream (if it exists) is closed."
von http://www.freebsd.org/cgi/man.cgi?query=freopen&apropos=0&sektion=0&manpath=FreeBSD+6.3-RELEASE&format=html hört sich ja schonmal nicht so gut an.
-
.......... schrieb:
für Windows findest du hier 2 Möglichkeiten: http://c-plusplus.net/forum/viewtopic-var-t-is-209314.html
damit gehts
danke