alloc.3
changeset 0 068428edee47
equal deleted inserted replaced
-1:000000000000 0:068428edee47
       
     1 .TH alloc 3
       
     2 .SH NAME
       
     3 alloc \- allocate memory
       
     4 .SH SYNTAX
       
     5 .B #include <alloc.h>
       
     6 
       
     7 char *\fBalloc\fP(\fInew\fR);
       
     8 
       
     9 void \fBalloc_free\fP(\fIx\fR);
       
    10 
       
    11 void \fBalloc_re\fP(&\fIx\fR,\fIold\fR,\fInew\fR);
       
    12 
       
    13 char *\fIx\fR;
       
    14 .br
       
    15 unsigned int \fIold\fR;
       
    16 .br
       
    17 unsigned int \fInew\fR;
       
    18 .SH DESCRIPTION
       
    19 .B alloc
       
    20 allocates enough space from the heap for
       
    21 .I new
       
    22 bytes of data,
       
    23 adequately aligned for any data type.
       
    24 .I new
       
    25 may be 0.
       
    26 .B alloc
       
    27 returns a pointer to the space.
       
    28 If space is not available,
       
    29 .B alloc
       
    30 returns 0,
       
    31 setting
       
    32 .B errno
       
    33 appropriately.
       
    34 
       
    35 .B alloc_free
       
    36 returns space to the heap.
       
    37 
       
    38 .B alloc_re
       
    39 expands the space allocated to
       
    40 .I x
       
    41 from
       
    42 .I old
       
    43 bytes to
       
    44 .I new
       
    45 bytes.
       
    46 It allocates new space,
       
    47 copies
       
    48 .I old
       
    49 bytes from the old space to the new space,
       
    50 returns the old space to the heap,
       
    51 and changes
       
    52 .I x
       
    53 to point to the new space.
       
    54 It then returns 1.
       
    55 If space is not available,
       
    56 .B alloc_re
       
    57 returns 0,
       
    58 leaving the old space alone.
       
    59 .SH "SEE ALSO"
       
    60 sbrk(2),
       
    61 malloc(3),
       
    62 error(3)