fclose, _fcloseall

Enthält einen Stream (fclose) oder schließt alle geöffneten Streams (_fcloseall).

int fclose( 
   FILE *stream 
);
int _fcloseall( void );

Parameter

  • stream
    Zeiger zur FILE-Struktur.

Rückgabewert

fclose gibt 0 zurück, wenn der Stream erfolgreich geschlossen wird. _fcloseall gibt die Anzahl der geschlossenen Streams zurück. Beide Funktionen Rückhol- EOF, um einen Fehler anzugeben.

Hinweise

Die fclose-Funktion enthält die stream. Wenn stream den Wert NULL annimmt, wird der ungültige Parameterhandler, wie in Parametervalidierung beschrieben, aufgerufen. Wenn die Ausführung zulässig ist, um fortzufahren, legt fcloseerrno auf EINVAL festgelegt und EOF zurückgegeben. Es wird empfohlen, dass der stream Zeiger immer vor dem Aufrufen dieser Funktion überprüft wird.

Weitere Informationen zu diesen und anderen Fehlercodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.

Die _fcloseall-Funktion schließt alle geöffneten Streams außer stdin, stdout, stderr (und, in MS-DOS-, _stdaux und _stdprn). Sie enthält auch und löscht alle temporären Dateien, die von tmpfile erstellt werden. In beiden Funktionen puffert alles zugeordnetes mit dem Stream werden geleert vor dem Schließen. System-zugeordnete Puffer werden freigegeben, wenn der Stream geschlossen wird. Die Puffer, die vom Benutzer mit setbuf und setvbuf zugewiesen werden, werden nicht automatisch freigegeben.

Note: , falls diese Funktionen verwendet werden, um einen Stream zu schließen, der zugrunde liegende Dateideskriptor und von Betriebssystemdateihandle (oder der Socket) werden sowie der Stream geschlossen. Wenn die Datei ursprünglich als Dateihandle oder Dateideskriptor geöffnet war und mit fclose geschlossen wird, nicht auch rufen Sie _close auf, um den Dateideskriptor zu schließen; rufen Sie nicht die Win32-Funktion CloseHandle auf, um das Dateihandle zu schließen.

fclose und für Fehler von anderen Threads an _fcloseall Code schützen, variieren. Für nicht sperrende Version von fclose, finden Sie unter _fclose_nolock.

Anforderungen

Funktion

Erforderlicher Header

fclose

<stdio.h>

_fcloseall

<stdio.h>

Zusätzliche Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.

Beispiel

Im Beispiel für fopen.

.NET Framework-Entsprechung

Siehe auch

Referenz

Stream-E/A

_close

_fdopen, _wfdopen

fflush

fopen, _wfopen

freopen, _wfreopen