VistaIOFree(3) memory allocation functions

Other Alias

VistaIOMalloc, VistaIOCalloc, VistaIORealloc


VistaIOPointer VistaIOMalloc (size_t size);
VistaIOPointer VistaIOCalloc (size_t num, size_t elsize);
VistaIOPointer VistaIORealloc (VistaIOPointer ptr, size_t size);
void VistaIOFree (VistaIOPointer ptr);


Specifies the number of bytes desired.
Specifies the number of array elements desired.
Specifies the size of an array element, in bytes.
Specifies a pointer to the old storage or to the block of storage that is to be freed.


The VistaIOMalloc function returns a pointer to a block of storage of at least size bytes. It returns NULL, however, if size is zero.

The VistaIOCalloc function allocates space for num array elements of the size elsize, initializing the space to zero bits. Like VistaIOMalloc, it returns NULL if asked to allocate zero space.

The VistaIORealloc function changes a block of storage, pointed to by ptr, to be of size size (possibly moving it). If necessary, it allocates a new block at a different location, copies the old contents (or as much as will fit) into the new block, and then frees the old block. If ptr is NULL, VistaIORealloc allocates the new storage without copying the old contents; that is, it simply calls VistaIOMalloc. If size is zero, it frees storage pointed to by ptr and returns NULL.

The VistaIOFree function frees storage, allowing it to be reused. If ptr is NULL, VistaIOFree has no effect.


VistaIOMalloc, VistaIOCalloc, and VistaIORealloc each return a pointer to the allocated storage.

VistaIOFree does not return a value.


If there is insufficient memory to allocate a requested block, VistaIOMalloc, VistaIOCalloc, or VistaIORealloc will terminate by calling VistaIOError(3) with the message ``Memory allocation failure''.


Art Pope <[email protected]>

Adaption to vistaio: Gert Wollny <[email protected]>


These functions and this manual page are based on similar ones included in the X Toolkit Intrinsics, which is Copyright 1985, 1986, 1987, 1988 Massachusetts Institute of Technology, Cambridge, Massachusetts, and Digital Equipment Corporation, Maynard, Massachusetts.