vfprintf, vprintf, vsprintf, vsnprintf, vasprintf, vasnprintf—format argument list #include <stdio.h>
#include <stdarg.h>
int vprintf(const char *fmt, va_list list);
int vfprintf(FILE *fp, const char *fmt, va_list list);
int vsprintf(char *str, const char *fmt, va_list list);
int vsnprintf(char *str, size_t size, const char *fmt,
va_list list);
int vasprintf(char **strp, const char *fmt, va_list list);
char *vasnprintf(char *str, size_t *size, const char *fmt,
va_list list);
int _vprintf_r(struct _reent *reent, const char *fmt,
va_list list);
int _vfprintf_r(struct _reent *reent, FILE *fp,
const char *fmt, va_list list);
int _vsprintf_r(struct _reent *reent, char *str,
const char *fmt, va_list list);
int _vasprintf_r(struct _reent *reent, char **str,
const char *fmt, va_list list);
int _vsnprintf_r(struct _reent *reent, char *str,
size_t size, const char *fmt,
va_list list);
char *_vasnprintf_r(struct _reent *reent, char *str,
size_t *size, const char *fmt,
va_list list);
Description
vprintf, vfprintf, vasprintf, vsprintf, vsnprintf,
and vasnprintf are (respectively) variants of printf,
fprintf, asprintf, sprintf, snprintf, and
asnprintf. They differ only in allowing their caller to pass the
variable argument list as a va_list object (initialized by
va_start) rather than directly accepting a variable number of
arguments. The caller is responsible for calling va_end.
_vprintf_r, _vfprintf_r, _vasprintf_r, _vsprintf_r,
_vsnprintf_r, and _vasnprintf_r are reentrant versions of the
above.
Returns
The return values are consistent with the corresponding functions.
Portability
ANSI C requires vprintf, vfprintf, vsprintf, and
vsnprintf. The remaining functions are newlib extensions.
Supporting OS subroutines required: close, fstat, isatty,
lseek, read, sbrk, write.