Loading...
Searching...
No Matches
snprintf implementations
Apache Portability Runtime library » String routines
Collaboration diagram for snprintf implementations:

## Functions

int | apr_snprintf (char *buf, apr_size_t len, const char *format,...)
int | apr_vsnprintf (char *buf, apr_size_t len, const char *format, va_list ap)

## Detailed Description

Warning
  These are snprintf implementations based on apr_vformatter().

Note that various standards and implementations disagree on the return value of snprintf, and side-effects due to n in the formatting string. apr_snprintf (and apr_vsnprintf) behaves as follows:

Process the format string until the entire string is exhausted, or the buffer fills. If the buffer fills then stop processing immediately (so no further n arguments are processed), and return the buffer length. In all cases the buffer is NUL terminated. It will return the number of characters inserted into the buffer, not including the terminating NUL. As a special case, if len is 0, apr_snprintf will return the number of characters that would have been inserted if the buffer had been infinite (in this case, *buffer can be NULL)

In no event does apr_snprintf return a negative number.

## Function Documentation

## apr_snprintf()

int apr_snprintf | ( | char * | buf,
|  | apr_size_t | len,
|  | const char * | format,
|  |  | ...
| ) |  |

snprintf routine based on apr_vformatter. This means it understands the same extensions.

Parameters

  buf | The buffer to write to
  len | The size of the buffer
  format | The format string
  ... | The arguments to use to fill out the format string.

## apr_vsnprintf()

int apr_vsnprintf | ( | char * | buf,
|  | apr_size_t | len,
|  | const char * | format,
|  | va_list | ap
| ) |  |

vsnprintf routine based on apr_vformatter. This means it understands the same extensions.

Parameters

  buf | The buffer to write to
  len | The size of the buffer
  format | The format string
  ap | The arguments to use to fill out the format string.