           curl_maprintf,         curl_mfprintf,        curl_mprintf,
           curl_msnprintf,  curl_msprintf  curl_mvaprintf,  curl_mvf-
           printf,  curl_mvprintf,  curl_mvsnprintf, curl_mvsprintf -
           formatted output conversion

## SYNOPSIS

           #include <curl/mprintf.h>

           int curl_mprintf(const char *format, ...);
           int curl_mfprintf(FILE *fd, const char *format, ...);
           int curl_msprintf(char *buffer, const char *format, ...);
           int curl_msnprintf(char *buffer, size_t  maxlength,  const
           char *format, ...);
           int curl_mvprintf(const char *format, va_list args);
           int  curl_mvfprintf(FILE  *fd, const char *format, va_list
           args);
           int  curl_mvsprintf(char  *buffer,  const  char   *format,
           va_list args);
           int  curl_mvsnprintf(char *buffer, size_t maxlength, const
           char *format, va_list args);
           char *curl_maprintf(const char *format, ...);
           char *curl_mvaprintf(const char *format, va_list args);

## DESCRIPTION

           These are all functions that produces output according  to
           a  format  string  and  given  arguments. These are mostly
           clones of the well-known C-style functions and there  will
           be  no  detailed  explanation  of all available formatting
           rules and usage here.

           See this table for notable exceptions.

                  curl_mprintf()
                         Normal printf() clone.

                  curl_mfprintf()
                         Normal fprinf() clone.

                  curl_msprintf()
                         Normal sprintf() clone.

                  curl_msnprintf()
                         snprintf() clone. Many  systems  don't  have
                         this.  It  is  just like sprintf but with an
                         extra argument after the buffer that  speci-
                         fies the length of the target buffer.

                  curl_mvprintf()
                         Normal vprintf() clone.

                  curl_mvfprintf()
                         Normal vfprintf() clone.
                         Normal vsprintf() clone.

                  curl_mvsnprintf()
                         vsnprintf()  clone.  Many systems don't have
                         this. It is just like vsprintf but  with  an
                         extra  argument after the buffer that speci-
                         fies the length of the target buffer.

                  curl_maprintf()
                         Like printf() but returns the output  string
                         as  a malloc()ed string. The returned string
                         must be free()ed by the receiver.

                  curl_mvaprintf()
                         Like curl_maprintf()  but  takes  a  va_list
                         pointer   argument  instead  of  a  variable
                         amount of arguments.

           To easily use all these cloned functions  instead  of  the
           normal  ones,  #define _MPRINTF_REPLACE before you include
           the <curl/mprintf.h> file. Then all the normal names  like
           printf,  fprintf,  sprintf etc will use the curl-functions
           instead.

## RETURN VALUE

           The curl_maprintf and curl_mvaprintf  functions  return  a
           pointer to a newly allocated string, or NULL it it failed.

           All other functions return the number  of  character  they
           actually outputed.

## SEE ALSO

           printf(3), sprintf(3), fprintf(3), vprintf(3)