unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (NetBSD-6.1.5)
Page:
Section:
Apropos / Subsearch:
optional field

ALLOCA(3)                  Library Functions Manual                  ALLOCA(3)

NAME
     alloca -- memory allocator

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <&lt;stdlib.h>&gt;

     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:

     o   The alloca() function is machine dependent; its use is discouraged.

     o   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.

     o   Since alloca() modifies the stack at runtime, it causes problems to
         certain security features.  See security(7) for a discussion.

NetBSD 6.1.5                    March 21, 2011                    NetBSD 6.1.5