Latest web development tutorials

C-Bibliotheksfunktionen - freopen ()

C Standard-Bibliothek - <stdio.h> C Standard - Bibliothek - <stdio.h>

Beschreibung

C - BibliotheksfunktionenFILE * freopen (const char * filename , const char * Modus, FILE * stream) zu einem neuen DateinamenFließstrom Dateinamen mit der gegebenen Menge von offenen verbunden, während der Strom der alten Dateien zu schließen.

Erklärung

Hier ist freopen () Funktion Erklärung.

FILE *freopen(const char *filename, const char *mode, FILE *stream)

Parameter

  • Dateiname - Dies ist eine C - Zeichenfolge mit dem Namen der Datei , die Sie öffnen möchten.
  • Modus - Dies ist ein C - String den Dateizugriffsmodus enthält, der Modus ist wie folgt:
模式描述
"r" 打开一个用于读取的文件。该文件必须存在。
"w" 创建一个用于写入的空文件。如果文件名称与已存在的文件相同,则会删除已有文件的内容,文件被视为一个新的空文件。
"a" 追加到一个文件。写操作向文件末尾追加数据。如果文件不存在,则创建文件。
"r+" 打开一个用于更新的文件,可读取也可写入。该文件必须存在。
"w+" 创建一个用于读写的空文件。
"a+" 打开一个用于读取和追加的文件。
  • Stream - dieses ist ein Zeiger Zeiger auf ein Objekt zu Datei ist die Objekt - ID FILE wieder zu öffnen , um den Strom zu werden.

Rückgabewert

Wenn die Datei erfolgreich geöffnet wird, gibt die Funktion einen Zeiger auf das Objekt-ID-Stream. Andernfalls gibt es einen Null-Zeiger.

Beispiele

Das folgende Beispiel zeigt freopen () Funktion verwendet wird.

#include <stdio.h>

int main ()
{
   FILE *fp;

   printf("该文本重定向到 stdout\n");

   fp = freopen("file.txt", "w+", stdout);

   printf("该文本重定向到 file.txt\n");

   fclose(fp);
   
   return(0);
}

Lassen Sie uns zusammenzustellen und um das obige Programm ausführen, die die folgenden Zeilen in die Standardausgabe STDOUT, senden, weil auf den ersten haben wir nicht auf die Standard-Ausgabe drehen:

该文本重定向到 stdout

Nach dem Aufruf vonfreopen (), wird es in die Standardausgabe STDOUT Datei file.txtin Verbindung gebrachtwerden,ob wir in sein wird , was geschrieben wird , wird auf die Standardausgabe STDOUT datei.txt geschrieben, werden Sie die folgende Datei file.txt Inhalt haben.

该文本重定向到 file.txt

Nun wollen wir das folgende Verfahren, um den Inhalt der oben angegebenen Datei anzuzeigen:

#include <stdio.h>

int main ()
{
   FILE *fp;
   int c;

   fp = fopen("file.txt","r");
   while(1)
   {
      c = fgetc(fp);
      if( feof(fp) )
      {
          break ;
      }
      printf("%c", c);
   }
   fclose(fp);
   return(0);
}

C Standard-Bibliothek - <stdio.h> C Standard - Bibliothek - <stdio.h>