Zusammenfassung
Dieser Artikel erläutert, wie dieser Artikel in einer Datei stdout aus
einem C-programm umleitet, dann das stdout ursprünglich zu einem
späteren Zeitpunkt in demselben Programm wiederherstellen kann. Die
C-funktion, die gewöhnlich zu dem Umleiten von stdout oder Stdin
verwandt wird, ist Freopen(). Verwenden Sie den folgenden Aufruf, um in
einer Datei stdout umzuleiten, die als FILE.TXT bezeichnet wird:
freopen( "file.txt", "w", stdout );
Diese Anweisung verursacht alle nachfolgende Ausgabe, die normalerweise
gen stdout gerichtet wird, um zu der Datei FILE.TXT zu wechseln.
Verwenden Sie den folgenden Aufruf, um stdout an die (Standard stdout)
Anzeige zurückzugeben: freopen( "CON", "w", stdout );
Überprüfen Sie in diesen beiden Fällen den Rückgabewert von Freopen(),
um sicherzustellen, dass die Umleitung tatsächlich stattfand.
Ein die Umleitung von stdout veranschaulichendes kurzes Programm
befindet sich unten:
Zum Anfang
Beispielcod
// Compile options needed: none
#include <stdio.h>
#include <stdlib.h>
void main(void)
{
FILE *stream ;
if((stream = freopen("file.txt", "w", stdout)) == NULL)
exit(-1);
printf("this is stdout output\n");
stream = freopen("CON", "w", stdout);
printf("And now back to the console once again\n");
}