String Input Conversions Next: Previous: Numeric Input Conversions Up: C-Style I/O Functions



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