The function to register a new output conversion is
register_printf_function, declared in `printf.h'.
'z', it defines the conversion `%z'. You can redefine the built-in conversions like `%s', but flag characters like `#' and type modifiers like `l' can never be used as conversions; calling
register_printf_functionfor those characters has no effect.
The handler-function is the function called by
friends when this conversion appears in a template string.
See section Defining the Output Handler, for information about how to define
a function to pass as this argument. If you specify a null pointer, any
existing handler function for spec is removed.
The arginfo-function is the function called by
parse_printf_format when this conversion appears in a
template string. See section Parsing a Template String, for information
Attention: In the GNU C library version before 2.0 the
arginfo-function function did not need to be installed unless
the user uses the
parse_printf_format function. This changed.
Now a call to any of the
printf functions will call this
function when this format specifier appears in the format string.
The return value is
0 on success, and
-1 on failure
(which occurs if spec is out of range).
You can redefine the standard output conversions, but this is probably not a good idea because of the potential for confusion. Library routines written by other people could break if you do this.
Go to the first, previous, next, last section, table of contents.