Next: Binary I/O, Previous: Numeric Input Conversions, Up: C-Style I/O Functions [Contents][Index]

#### 14.2.15 String Input Conversions

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,"`.