C Language and Libraries Help (clang.hlp) (Table of Contents; Topic list)
_vrealloc
 Summary Example                         Up Contents Index Back
─────Run-Time Library───────────────────────────────────────────────────────
 
     The _vrealloc function changes the size of a virtual memory
     block. If <handle> is _VM_NULL, _vrealloc behaves in the same way
     as _vmalloc and allocates a new block of <size> bytes. If
     <handle> is not _VM_NULL, it must point to a virtual memory block
     previously allocated through a call to _vmalloc or _vrealloc.
 
     The <size> argument gives the new size of the block, in bytes.
     The size of the block may be larger than <size> bytes to allow the
     virtual memory manager to operate more efficiently; use _vmsize
     to find the actual size of the block. The contents of the block
     are unchanged up to the shorter of the new and old sizes,
     although the new block may be in a different location.
 
     Return Value
 
     The _vrealloc functions returns a handle to the reallocated (and
     possibly moved) virtual memory block.
 
     The return value is _VM_NULL if the size specified is zero and
     the <handle> argument is not _VM_NULL. In this case, the original
     block is freed.
 
     The return value is also _VM_NULL if there is not enough available
     memory to expand the block to the requested size, or if the
     requested block size is too large to load into DOS memory, or if
     the given block is still locked. In these cases, the original
     block is still valid.
                                    -♦-