[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'System' (#rtl)

# ReAllocMem

Re-allocate memory on the heap

## Declaration

Source position: heaph.inc line 101

`function ReAllocMem(`
`var p: pointer;`
`Size: PtrUInt`
`):pointer;`

## Description

ReAllocMem resizes the memory pointed to by P so it has size Size. The value of P may change during this operation. The contents of the memory pointed to by P (if any) will be copied to the new location, but may be truncated if the newly allocated memory block is smaller in size. If a larger block is allocated, only the used memory is initialized, extra memory will not be zeroed out.

Note that P may be nil, in that case the behaviour of ReAllocMem is equivalent to Getmem.

## See also

GetMem |  | Allocate new memory on the heap
FreeMem |  | Release allocated memory