String Input Conversions Next: Binary I/O Previous: Numeric Input Conversions Up: C-Style I/O Functions
This section describes the scanf
input conversions for reading
string and character values: %s
and %c
.
The %c
conversion is the simplest: it matches a fixed number of
characters always. The maximum field with says how many characters to
read; if you don't specify the maximum the default is 1. This
conversion does not skip over initial whitespace characters. It reads
precisely the next n characters and fails if it cannot get that
many.
The %s
conversion matches a string of non-whitespace characters.
It skips and discards initial whitespace but stops when it encounters
more whitespace after having read something.
For example reading the input:
hello world
with the conversion %10c
produces " hello wo"
, but
reading the same input with the conversion %10s
produces
"hello"
.