Allocate a copy of a string, up to n characters.
Defined in <SDL3/SDL_stdinc.h>
char * SDL_strndup(const char *str, size_t maxlen);
const char * | str | the string to copy. |
size_t | maxlen | the maximum length of the copied string, not counting the null-terminator character. |
(char *) Returns a pointer to the newly-allocated string.
This allocates enough space for a null-terminated copy of str
, up to maxlen
bytes, using SDL_malloc, and then makes a copy of the string into this space.
If the string is longer than maxlen
bytes, the returned string will be maxlen
bytes long, plus a null-terminator character that isn't included in the count.
The returned string is owned by the caller, and should be passed to SDL_free when no longer needed.
It is safe to call this function from any thread.
This function is available since SDL 3.1.3.