(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