vsprintf
Formats data under control of the format control string
#include <stdarg.h> #include <stdio.h> int vsprintf ( char *buf, const char *format, va_list arg);
The vsprintf function returns the number of characters written, or a negative value if an output error occurred.
The vsprintf function formats data under control of the format control string and writes the result to buf. The format string is described under the description for printf. The vsprintf function is equivalent to sprintf, with the variable argument list replaced with arg, which has been initialized by the va_start macro.
This example shows the use of vsprintf in a general error message routine.
#include <stdarg.h> #include <stdio.h> #include <striup.h> char msgbuf[80]; char *fmtmsg (char *format, ... ) { va_list arglist; va_start (arglist, format); strcpy (msgbuf, "Error: "); vsprintf (&msgbuf[7], format, arglist); va_end (arglist); return (msgbuf); }