SDL_realloc - Man Page
Change the size of allocated memory.
Synopsis
#include <SDL3/SDL_stdinc.h> void * SDL_realloc(void *mem, size_t size);
Description
The memory returned by this function must be freed with SDL_free().
If size is 0, it will be set to 1. Note that this is unlike some other C runtime realloc implementations, which may treat realloc(mem, 0) the same way as free(mem).
If mem is NULL, the behavior of this function is equivalent to SDL_malloc(). Otherwise, the function can have one of three possible outcomes:
· If it returns the same pointer as mem, it means that mem was resized in place without freeing.
· If it returns a different non-NULL pointer, it means that mem was freed and cannot be dereferenced anymore.
· If it returns NULL (indicating failure), then mem will remain valid and must still be freed with SDL_free().
If the allocation is successfully resized, the returned pointer is guaranteed to be aligned to either the fundamental alignment (alignof(max_align_t) in C11 and later) or 2 sizeof(void )" , whichever is smaller.
Function Parameters
- mem
a pointer to allocated memory to reallocate, or NULL.
- size
the new size of the memory.
Return Value
Returns a pointer to the newly allocated memory, or NULL if allocation failed.
Thread Safety
It is safe to call this function from any thread.
Availability
This function is available since SDL 3.2.0.
See Also
Referenced By
SDL_calloc(3), SDL_free(3), SDL_malloc(3), SDL_realloc_func.3type(3).