fcloseall — close all open streams


#define _GNU_SOURCE         /* See feature_test_macros(7) */
#include <stdio.h>

int fcloseall(void);


The fcloseall() function closes all of the calling process's open streams. Buffered output for each stream is written before it is closed (as for fflush(3)); buffered input is discarded.

The standard streams, stdin, stdout, and stderr are also closed.

Return Value

This function returns 0 if all files were successfully closed; on error, EOF is returned.


For an explanation of the terms used in this section, see attributes(7).

Interface Attribute Value
fcloseall() Thread safety MT-Unsafe race:streams

The fcloseall() function does not lock the streams, so it is not thread-safe.

Conforming to

This function is a GNU extension.

See Also

close(2), fclose(3), fflush(3), fopen(3), setbuf(3)


This page is part of release 5.04 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.

Referenced By


2017-09-15 GNU Linux Programmer's Manual