Next: Formatted Input, Previous: Formatted Output, Up: I/O on Streams [Contents][Index]
printf
The GNU C Library lets you define your own custom conversion specifiers
for printf
template strings, to teach printf
clever ways
to print the important data structures of your program.
The way you do this is by registering the conversion with the function
register_printf_function
; see Registering New Conversions.
One of the arguments you pass to this function is a pointer to a handler
function that produces the actual output; see Defining the Output Handler, for information on how to write this function.
You can also install a function that just returns information about the number and type of arguments expected by the conversion specifier. See Parsing a Template String, for information about this.
The facilities of this section are declared in the header file printf.h.
• Registering New Conversions: | Using register_printf_function
to register a new output conversion.
| |
• Conversion Specifier Options: | The handler must be able to get the options specified in the template when it is called. | |
• Defining the Output Handler: | Defining the handler and arginfo
functions that are passed as arguments
to register_printf_function .
| |
• Printf Extension Example: | How to define a printf
handler function.
| |
• Predefined Printf Handlers: | Predefined printf handlers.
|
Portability Note: The ability to extend the syntax of
printf
template strings is a GNU extension. ISO standard C has
nothing similar.
Next: Formatted Input, Previous: Formatted Output, Up: I/O on Streams [Contents][Index]