Man Linux: Main Page and Category List

NAME

       malloc - a memory allocator

SYNOPSIS

       #include <stdlib.h>

       void *malloc(size_t size);

DESCRIPTION

       The  malloc()  function shall allocate unused space for an object whose
       size in bytes is specified by size and whose value is unspecified.

       The order and contiguity of storage allocated by  successive  calls  to
       malloc()  is  unspecified.  The  pointer  returned  if  the  allocation
       succeeds shall be suitably aligned so that it  may  be  assigned  to  a
       pointer to any type of object and then used to access such an object in
       the  space  allocated  (until  the  space  is   explicitly   freed   or
       reallocated).  Each  such allocation shall yield a pointer to an object
       disjoint from any other object. The  pointer  returned  points  to  the
       start (lowest byte address) of the allocated space. If the space cannot
       be allocated, a null pointer shall be returned.  If  the  size  of  the
       space requested is 0, the behavior is implementation-defined: the value
       returned shall be either a null pointer or a unique pointer.

RETURN VALUE

       Upon successful completion with size not equal  to  0,  malloc()  shall
       return  a  pointer  to the allocated space. If size is 0, either a null
       pointer or a unique pointer that can be successfully passed  to  free()
       shall be returned. Otherwise, it shall return a null pointer    and set
       errno to indicate the error.

ERRORS

       The malloc() function shall fail if:

       ENOMEM Insufficient storage space is available.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       calloc() ,  free()  ,  realloc()  ,  the  Base  Definitions  volume  of
       IEEE Std 1003.1-2001, <stdlib.h>

COPYRIGHT

       Portions  of  this text are reprinted and reproduced in electronic form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       --  Portable  Operating  System  Interface (POSIX), The Open Group Base
       Specifications Issue 6, Copyright (C) 2001-2003  by  the  Institute  of
       Electrical  and  Electronics  Engineers, Inc and The Open Group. In the
       event of any discrepancy between this version and the original IEEE and
       The  Open Group Standard, the original IEEE and The Open Group Standard
       is the referee document. The original Standard can be  obtained  online
       at http://www.opengroup.org/unix/online.html .