Files
Digital-Research-Source-Code/CPM OPERATING SYSTEMS/CPM 68K/1.0X SOURCES/v102a/clib/calloc.c
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

40 lines
1.0 KiB
C

/********************************************************************
*
* calloc.c - memory allocator for sets of elements
* zalloc - memory allocator like malloc only zeros storage.
*
* BYTE *calloc(nelem,sizelem)
* WORD nelem, sizelem;
*
* Returns a pointer to a region of (zero filled) memory large
* enough to hold 'nelem' items each of size 'sizelem'.
* Returns NULL if not enough memory.
*
* BYTE *zalloc(nbytes)
* UWORD nbytes;
*
* Returns a pointer to a region of zero filled memory nbytes long.
* Returns NULL if not enough memory.
*
*********************************************************************/
#include "portab.h"
BYTE * zalloc(nbytes) /* CLEAR FUNCTION ***********/
WORD nbytes; /* number of bytes */
{
REG BYTE *rp; /* pointer to region */
BYTE *malloc();
if( (rp = malloc(nbytes)) == NULLPTR) return(NULLPTR);
blkfill( rp, NULL, nbytes );
return(rp);
}
BYTE * calloc(nelem,sizelem) /* CLEAR FUNCTION ***********/
WORD nelem, /* number of elements */
sizelem; /* size of element */
{
return(zalloc(sizelem*nelem));
}