xprintf_comp(3) BSD Library Functions Manual xprintf_comp(3)
NAME
free_printf_comp, new_printf_comp -- extensible printf compilation
SYNOPSIS
#include <printf.h> void free_printf_comp(printf_comp_t pc); printf_comp_t new_printf_comp(printf_domain_t restrict domain, locale_t restrict loc, const char * restrict fmt);
DESCRIPTION
To ameliorate some of the slowness caused by the extra overhead in exten- sible printf (see xprintf(5)), a compile/execute mechanism has been cre- ated. The new_printf_comp() function compiles the given format string, along with a printf domain (see xprintf_domain(3)) and an extended locale (see xlocale(3)), and returns a printf_comp_t structure. The domain may not be NULL, but the locale can be NULL, which means to use the current locale, either the per-thread locale if it was set, or else the global locale. Because the printf_comp_t structure records the domain and locale, care should be taken if either of these are changed. Once a printf_comp_t structure is created, it can be passed to one of the extensible printf execution variants, described in xprintf_exec(3), along with the necessary arguments. Creating the printf_comp_t structure needs to be done only once, but it can be passed to extensible printf execution variants any number of times. When the printf_comp_t structure is no longer needed, it should be passed to free_printf_comp() to release internal memory.
RETURN VALUES
The new_printf_comp() function returns the new structure, or NULL on error (usually NULL domain or out of memory condition).
SEE ALSO
xlocale(3), xprintf_domain(3), xprintf_exec(3), xprintf(5) Darwin Aug 19, 2012 Darwin
Mac OS X 10.9.1 - Generated Fri Jan 10 16:50:36 CST 2014