◐ Shell
clean mode source ↗

C-style file input/output - cppreference.com

From cppreference.com

The C I/O subset of the C++ standard library implements C-style stream input/output operations. The <cstdio> header provides generic file operation support and supplies functions with narrow and multibyte character input/output capabilities, and the <cwchar> header provides functions with wide character input/output capabilities.

C streams are denoted by objects of type std::FILE that can only be accessed and manipulated through pointers of type std::FILE*. Each C stream is associated with an external physical device (file, standard input stream, printer, serial port, etc).

Types

object type, capable of holding all information needed to control a C I/O stream
(typedef) [edit]
complete non-array object type, capable of uniquely specifying a position in a file, including its multibyte parse state
(typedef) [edit]

Predefined standard streams

expression of type FILE* associated with the input stream
expression of type FILE* associated with the output stream
expression of type FILE* associated with the error output stream
(macro constant) [edit]

Functions

Defined in header <cstdio>

File access
opens a file
(function) [edit]
open an existing stream with a different name
(function) [edit]
closes a file
(function) [edit]
synchronizes an output stream with the actual file
(function) [edit]
switches a file stream between wide character I/O and narrow character I/O
(function) [edit]
sets the buffer for a file stream
(function) [edit]
sets the buffer and its size for a file stream
(function) [edit]
Direct input/output
reads from a file
(function) [edit]
writes to a file
(function) [edit]
Unformatted input/output
Byte/multibyte character
gets a character from a file stream
(function) [edit]
gets a character string from a file stream
(function) [edit]
writes a character to a file stream
(function) [edit]
writes a character string to a file stream
(function) [edit]
reads a character from stdin
(function) [edit]

(deprecated in C++11)(removed in C++14)

reads a character string from stdin
(function) [edit]
writes a character to stdout
(function) [edit]
writes a character string to stdout
(function) [edit]
puts a character back into a file stream
(function) [edit]
Wide character
gets a wide character from a file stream
(function) [edit]
gets a wide string from a file stream
(function) [edit]
writes a wide character to a file stream
(function) [edit]
writes a wide string to a file stream
(function) [edit]
reads a wide character from stdin
(function) [edit]
writes a wide character to stdout
(function) [edit]
puts a wide character back into a file stream
(function) [edit]
Formatted input/output
Byte/multibyte character
reads formatted input from stdin, a file stream or a buffer
(function) [edit]

(C++11)(C++11)(C++11)

reads formatted input from stdin, a file stream or a buffer
using variable argument list
(function) [edit]
prints formatted output to stdout, a file stream or a buffer
(function) [edit]
prints formatted output to stdout, a file stream or a buffer
using variable argument list
(function) [edit]
Wide character
reads formatted wide character input from stdin, a file stream or a buffer
(function) [edit]

(C++11)(C++11)(C++11)

reads formatted wide character input from stdin, a file stream
or a buffer using variable argument list
(function) [edit]
prints formatted wide character output to stdout, a file stream or a buffer
(function) [edit]
prints formatted wide character output to stdout, a file stream
or a buffer using variable argument list
(function) [edit]
File positioning
returns the current file position indicator
(function) [edit]
gets the file position indicator
(function) [edit]
moves the file position indicator to a specific location in a file
(function) [edit]
moves the file position indicator to a specific location in a file
(function) [edit]
moves the file position indicator to the beginning in a file
(function) [edit]
Error handling
clears errors
(function) [edit]
checks for the end-of-file
(function) [edit]
checks for a file error
(function) [edit]
displays a character string corresponding of the current error to stderr
(function) [edit]
Operations on files
erases a file
(function) [edit]
renames a file
(function) [edit]
creates and opens a temporary, auto-removing file
(function) [edit]
returns a unique filename
(function) [edit]

Macro constants

integer constant expression of type int and negative value
(macro constant)
maximum number of files that can be open simultaneously
(macro constant)
size needed for an array of char to hold the longest supported file name
(macro constant)

_PRINTF_NAN_LEN_MAX

(C++26)

the maximum number of characters output for any (possibly negated) NaN value
(macro constant)
size of the buffer used by std::setbuf
(macro constant)
indicates the buffering mode (fully buffered / line buffered / unbuffered) to be set by std::setvbuf
(macro constant)
indicates the offset origin (beginning / current position / end) to be used by std::fseek
(macro constant)
maximum number of unique filenames that can be generated by std::tmpnam
(macro constant)
size needed for an array of char to hold the result of std::tmpnam
(macro constant)

See also