Text I/O
By default, an I/O stream performs text I/O, also known as formatted I/O, in which text is converted to and from numeric and other values. For output, values are converted to text, and padding, alignment, and other formatting is applied to the text. For input, formatting controls how text is converted to values and whether whitespace is skipped prior to reading an input field.
Different systems have different ways of representing the end of a
line. A text I/O stream hides these details and maps all line endings in
a file to the newline character ('\n
'). Thus, the number of characters read from
or written to a file might not match the actual file size. An
implementation might require a newline at the end of the last line of a
file.
To control formatting, a stream keeps track of a set of flags, a
field width, and a precision. Table 13-12 (in the <ios>
section) lists all the formatting
flags.
Formatted Input
The formatted input functions are the overloaded operator>>
functions. If the skipws
flag is set (which is the default),
whitespace characters (according to the locale imbued in the stream)
are skipped, and input begins with the first non-whitespace
character.
If reading into a string
or
character array, all non-whitespace characters are read into the
string, ending with the first whitespace character or when width
characters have been read (if width
> 0), whichever comes first. ...
Get C++ In a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.