19 va_copy(argcopy, pargs);
20 retval = vsnprintf(NULL, 0, format, argcopy);
25int vasprintf(
char **strp,
const char *fmt, va_list ap) {
27 if (len == -1)
return -1;
28 char *str = malloc((
size_t) len + 1);
30 int r = vsnprintf(str, len + 1, fmt, ap);
31 if (r == -1)
return free(str), -1;
36int asprintf(
char *strp[],
const char *fmt, ...) {
int vasprintf(char **strp, const char *fmt, va_list ap)
int asprintf(char *strp[], const char *fmt,...)
int _vscprintf_so(const char *format, va_list pargs)
Multiplatform implementation of asprintf() from: https://stackoverflow.com/questions/40159892/using-a...