SDL_snprintf - Man Page
This works exactly like snprintf() but doesn't require access to a C runtime.
Header File
Defined in SDL3/SDL_stdinc.h
Synopsis
#include "SDL3/SDL.h" int SDL_snprintf(char *text, size_t maxlen, const char *fmt, ...);
Description
Format a string of up to maxlen -1 bytes, converting each '%' item with values provided through variable arguments.
While some C runtimes differ on how to deal with too-large strings, this function null-terminates the output, by treating the null-terminator as part of the maxlen count. Note that if maxlen is zero, however, no bytes will be written at all.
This function returns the number of _bytes_ (not _characters_) that should be written, excluding the null-terminator character. If this returns a number >= maxlen , it means the output string was truncated. A negative return value means an error occurred.
Referencing the output string's pointer with a format item is undefined behavior.
Function Parameters
- text
the buffer to write the string into. Must not be NULL.
- maxlen
the maximum bytes to write, including the null-terminator.
- fmt
a printf-style format string. Must not be NULL.
- ...
a list of values to be used with the format string.
Return Value
Returns the number of bytes that should be written, not counting the null-terminator char, or a negative value on error.
Thread Safety
It is safe to call this function from any thread.
Availability
This function is available since SDL 3.2.0.