void
*
alloca(
size_t size
)
)
function
allocates
size
bytes of space in the stack frame of the caller.
This temporary space is automatically freed on
return.
)
function returns a pointer to the beginning of the allocated space.
If the allocation failed, a
NULL
pointer is returned.
)
function
is machine dependent; its use is discouraged.
The
alloca()
function is slightly unsafe because it cannot ensure that the pointer
returned points to a valid and usable block of memory.
The allocation made may exceed the bounds of the stack, or even go
further into other objects in memory, and
alloca(
)
cannot determine such an error.
Avoid
alloca(
)
with large unbounded allocations.