(libc.info.gz) Other Input Conversions
Info Catalog
(libc.info.gz) Dynamic String Input
(libc.info.gz) Formatted Input
(libc.info.gz) Formatted Input Functions
12.14.7 Other Input Conversions
-------------------------------
This section describes the miscellaneous input conversions.
The `%p' conversion is used to read a pointer value. It recognizes
the same syntax used by the `%p' output conversion for `printf' (
Other Output Conversions); that is, a hexadecimal number just as the
`%x' conversion accepts. The corresponding argument should be of type
`void **'; that is, the address of a place to store a pointer.
The resulting pointer value is not guaranteed to be valid if it was
not originally written during the same program execution that reads it
in.
The `%n' conversion produces the number of characters read so far by
this call. The corresponding argument should be of type `int *'. This
conversion works in the same way as the `%n' conversion for `printf';
see Other Output Conversions, for an example.
The `%n' conversion is the only mechanism for determining the
success of literal matches or conversions with suppressed assignments.
If the `%n' follows the locus of a matching failure, then no value is
stored for it since `scanf' returns before processing the `%n'. If you
store `-1' in that argument slot before calling `scanf', the presence
of `-1' after `scanf' indicates an error occurred before the `%n' was
reached.
Finally, the `%%' conversion matches a literal `%' character in the
input stream, without using an argument. This conversion does not
permit any flags, field width, or type modifier to be specified.
Info Catalog
(libc.info.gz) Dynamic String Input
(libc.info.gz) Formatted Input
(libc.info.gz) Formatted Input Functions
automatically generated by
info2html