fclose - close a file
fclose - close a stream
Standard C library (libc
, -lc
)
#include <stdio.h>
int fclose(FILE *stream);
#include <stdio.h>
int fclose(FILE *stream);
This function closes a file that has been opened via fopen. It expects as input the pointer to a FILE
that was returned by fopen.
The fclose() function flushes the stream pointed to
by stream
(writing any buffered output data using
fflush(3)) and closes the underlying file
descriptor.
The behaviour of fclose() is undefined if the
stream
parameter is an illegal pointer, or is a descriptor
already passed to a previous invocation of
fclose().
This function returns 0
if successful and EOF
, a constant, in cases of error.
Upon successful completion, 0 is returned. Otherwise,
EOF is returned and errno
is set to indicate
the error. In either case, any further access (including another call to
fclose()) to the stream results in undefined
behavior.
#inclue <stdio.h>
int main(void)
{
FILE *file = fopen("cs50.txt", "w");
if (file != NULL)
{
fprintf(file, "This is CS50\n");
fclose(file);
}
}
For an explanation of the terms used in this section, see attributes(7).
Interface | Attribute | Value |
fclose() |
Thread safety | MT-Safe |
C11, POSIX.1-2008.
C89, POSIX.1-2001.