# SDL_vsnprintf This works exactly like vsnprintf() but doesn't require access to a C runtime. ## Header File Defined in [](https://github.com/libsdl-org/SDL/blob/main/include/SDL3/SDL_stdinc.h) ## Syntax ```c int SDL_vsnprintf(char *text, size_t maxlen, const char *fmt, va_list ap); ``` ## Function Parameters | | | | | ------------ | ---------- | ---------------------------------------------------------- | | char * | **text** | the buffer to write the string into. Must not be NULL. | | size_t | **maxlen** | the maximum bytes to write, including the null-terminator. | | const char * | **fmt** | a printf-style format string. Must not be NULL. | | va_list | **ap** | a `va_list` values to be used with the format string. | ## Return Value (int) Returns the number of bytes that should be written, not counting the null-terminator char, or a negative value on error. ## Remarks Functions identically to [SDL_snprintf](SDL_snprintf)(), except it takes a `va_list` instead of using `...` variable arguments. ## Thread Safety It is safe to call this function from any thread. ## Version This function is available since SDL 3.2.0. ---- [CategoryAPI](CategoryAPI), [CategoryAPIFunction](CategoryAPIFunction), [CategoryStdinc](CategoryStdinc)