Chapter Contents |
Previous |
Next |
calloc |
Portability: | ISO/ANSI C conforming, UNIX compatible |
SYNOPSIS | |
DESCRIPTION | |
RETURN VALUE | |
ERRORS | |
DIAGNOSTICS | |
IMPLEMENTATION | |
EXAMPLE | |
RELATED FUNCTIONS | |
SEE ALSO |
SYNOPSIS |
#include <stdlib.h> void *calloc(size_t n, size_t size);
DESCRIPTION |
calloc
allocates a block of dynamic memory to contain
n
elements of the size specified by
size
. The block is cleared to binary 0s before return.
RETURN VALUE |
calloc
returns the address of the first character of the new block of memory. The
allocated block is suitably aligned for storage of any type of data.
ERRORS |
User ABEND 1205 or 1206 may occur if memory management data areas are overlaid.
DIAGNOSTICS |
If adequate memory is not available or
if you request 0 bytes,
NULL
is returned.
IMPLEMENTATION |
The size of the block allocated is at
least
n * size
.
Under an XA or ESA operating system, memory allocated
by
calloc
can reside above the 16-megabyte
line for programs that run in 31-bit addressing mode.
See malloc for further implementation information.
EXAMPLE |
#include <stdio.h> #include <stdlib.h> double *identity(int size) { double *matrix; int i; matrix = calloc(sizeof(double), size*size); if (matrix == NULL) return(NULL); for (i = 0; i < size; ++i) matrix[size*i + i] = 1.0; return matrix; }
RELATED FUNCTIONS |
SEE ALSO |
Chapter Contents |
Previous |
Next |
Top of Page |
Copyright © 2001 by SAS Institute Inc., Cary, NC, USA. All rights reserved.