alloca(3) - NetBSD Manual Pages

Command: Section: Arch: Collection:  
ALLOCA(3)               NetBSD Library Functions Manual              ALLOCA(3)

alloca -- memory allocator
Standard C Library (libc, -lc)
#include <stdlib.h> void * alloca(size_t size);
The alloca() function allocates size bytes of space in the stack frame of the caller. This temporary space is automatically freed on return.
The alloca() function returns a pointer to the beginning of the allocated space. If the allocation failed, a NULL pointer is returned.
brk(2), calloc(3), getpagesize(3), malloc(3), realloc(3)
Few limitations can be mentioned: The alloca() 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 mem- ory. The allocation made may exceed the bounds of the stack, or even go further into other objects in memory, and alloca() cannot deter- mine such an error. Avoid alloca() with large unbounded allocations. Since alloca() modifies the stack at runtime, it causes problems to certain security features. See security(7) for a discussion. NetBSD 6.0 March 21, 2011 NetBSD 6.0
Powered by man-cgi (2020-09-24). Maintained for NetBSD by Kimmo Suominen. Based on man-cgi by Panagiotis Christias.