NAME¶
alloc - allocate memory
SYNTAX¶
#include <alloc.h>
char *
alloc(
new);
void
alloc_free(
x);
void
alloc_re(&
x,
old,
new);
char *
x;
unsigned int
old;
unsigned int
new;
DESCRIPTION¶
alloc allocates enough space from the heap for
new bytes of data,
adequately aligned for any data type.
new may be 0.
alloc
returns a pointer to the space. If space is not available,
alloc
returns 0, setting
errno appropriately.
alloc_free returns space to the heap.
alloc_re expands the space allocated to
x from
old bytes to
new bytes. It allocates new space, copies
old bytes from the old
space to the new space, returns the old space to the heap, and changes
x to point to the new space. It then returns 1. If space is not
available,
alloc_re returns 0, leaving the old space alone.
SEE ALSO¶
sbrk(2),
malloc(3),
error(3)