SDL_stack_alloc - Man Page
Allocate memory on the stack (maybe).
Synopsis
#include <SDL3/SDL_stdinc.h> #define SDL_stack_alloc(type, count) (type*)alloca(sizeof(type)*(count))
Description
If SDL knows how to access alloca() on the current platform, it will use it to stack-allocate memory here. If it doesn't, it will use SDL_malloc() to heap-allocate memory.
Since this might not be stack memory at all, it's important that you check the returned pointer for NULL, and that you call SDL_stack_free on the memory when done with it. Since this might be stack memory, it's important that you don't allocate large amounts of it, or allocate in a loop without returning from the function, so the stack doesn't overflow.
Macro Parameters
- type
the datatype of the memory to allocate.
- count
the number of type objects to allocate.
Return Value
Returns newly-allocated memory, or NULL on failure.
Thread Safety
It is safe to call this macro from any thread.
Availability
This macro is available since SDL 3.2.0.
See Also
SDL_stack_free(3)