pub unsafe extern "C" fn SDL_realloc(
mem: *mut c_void,
size: usize,
) -> *mut c_voidExpand description
Change the size of allocated memory.
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 thatmemwas resized in place without freeing. - If it returns a different non-NULL pointer, it means that
memwas freed and cannot be dereferenced anymore. - If it returns NULL (indicating failure), then
memwill remain valid and must still be freed withSDL_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.
§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.