#include #include int snprintf(char * restrict str, size_t size, char const * restrict fmt, ...) { /* This is valid even if str=NULL. */ struct __printf_output out = { .str = str, .size = size, }; va_list args; va_start(args, fmt); int count = __printf(&out, fmt, &args); va_end(args); return count; }