fclose, _fcloseall

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Cierra una secuencia (fclose) o se cierra todas las secuencias abiertas (_fcloseall).

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

Parámetros

stream
Puntero a la estructura FILE .

fcloseDevuelve 0 si la secuencia está cerrada correctamente. _fcloseallDevuelve el número total de secuencias cerrada. Ambas funciones devuelven EOF para indicar un error.

El fclose función cierra stream. Si stream es NULL, se invoca el controlador de parámetros no válidos, como se describe en validación del parámetro. Si la ejecución puede continuar, fclose establece errno a EINVAL y devuelve EOF. Se recomienda que el stream puntero siempre se comprueba antes de llamar a esta función.

Consulte _doserrno, errno, _sys_errlist y _sys_nerr para obtener más información sobre estos y otros códigos de error.

El _fcloseall función cierra todas las secuencias excepto stdin, stdout, stderr (y en MS-DOS, _stdaux y _stdprn). También se cierra y se elimina los archivos temporales creados por tmpfile. En ambas funciones, se eliminan todos los búferes asociados a la secuencia antes de cerrar. Búferes asignados por el sistema se liberan cuando la secuencia está cerrada. Búferes asignados por el usuario con setbuf y setvbuf no se liberan automáticamente.

Nota: cuando estas funciones se utilizan para cerrar un objeto stream, el subyacente descriptor de archivo y sistema operativo identificador de archivo (o socket) se cierra, así como la secuencia. Por lo tanto, si el archivo se abrió originalmente como archivo controlar o descriptor de archivo y se cierra con fclose, no realice llamadas _close para cerrar el descriptor de archivo; no llame a la función de Win32 CloseHandle para cerrar el identificador de archivo.

fclosey _fcloseall incluir código para proteger frente a interferencias de otros subprocesos. Para la versión de no bloqueo de un fclose, consulte _fclose_nolock.

FunciónEncabezado necesario
fclose<stdio.h>
_fcloseall<stdio.h>

Para obtener información adicional de compatibilidad, vea Compatibilidad en la Introducción.

Vea el ejemplo de fopen.

E/S de secuencia
_Close
_fdopen, _wfdopen
fflush
fopen, _wfopen
freopen, _wfreopen

Mostrar: