calloc(3p) - phpMan

CALLOC(3P)                 POSIX Programmer's Manual                CALLOC(3P)

PROLOG
       This  manual  page is part of the POSIX Programmer's Manual.  The Linux
       implementation of this interface may differ (consult the  corresponding
       Linux  manual page for details of Linux behavior), or the interface may
       not be implemented on Linux.
NAME
       calloc - a memory allocator
SYNOPSIS
       #include <stdlib.h>
       void *calloc(size_t nelem, size_t elsize);

DESCRIPTION
       The calloc() function shall allocate unused space for an array of nelem
       elements each of whose size in bytes is elsize. The space shall be ini-
       tialized to all bits 0.
       The order and contiguity of storage allocated by  successive  calls  to
       calloc()  is  unspecified.  The pointer returned if the allocation suc-
       ceeds 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 or an
       array of such objects 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  shall  point  to the start (lowest byte address) of the allo-
       cated 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 both nelem and elsize non-zero, cal-
       loc() shall return a pointer to the allocated space. If either nelem or
       elsize  is 0, then either a null pointer or a unique pointer value 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 calloc() function shall fail if:
       ENOMEM Insufficient memory is available.

       The following sections are informative.
EXAMPLES
       None.
APPLICATION USAGE
       There  is  now  no  requirement  for  the implementation to support the
       inclusion of <malloc.h>.
RATIONALE
       None.
FUTURE DIRECTIONS
       None.
SEE ALSO
       free(),  malloc(),  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 .

IEEE/The Open Group                  2003                           CALLOC(3P)