alloca(3) - NetBSD Manual Pages

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


NAME
alloca -- memory allocator
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <stdlib.h> void * alloca(size_t size);
DESCRIPTION
The alloca() function allocates size bytes of space in the stack frame of the caller. This temporary space is automatically freed on return.
RETURN VALUES
The alloca() function returns a pointer to the beginning of the allocated space. If the allocation failed, a NULL pointer is returned.
SEE ALSO
brk(2), calloc(3), getpagesize(3), malloc(3), realloc(3)
CAVEATS
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 (2024-03-20). Maintained for NetBSD by Kimmo Suominen. Based on man-cgi by Panagiotis Christias.