Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.

Memory Allocation 

Use these routines to allocate, free, and reallocate memory.

Memory-Allocation Routines
Routine Use .NET Framework equivalent

_alloca, _malloca

Allocate memory from stack

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

calloc

Allocate storage for array, initializing every byte in allocated block to 0

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_calloc_dbg

Debug version of calloc; only available in the debug versions of the run-time libraries

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

operator delete

Free allocated block

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

operator delete[]

Free allocated block

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_expand

Expand or shrink block of memory without moving it

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_expand_dbg

Debug version of _expand; only available in the debug versions of the run-time libraries

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

free

Free allocated block

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_free_dbg

Debug version of free; only available in the debug versions of the run-time libraries

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_freea

Free allocated block from stack

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_get_heap_handle

Get Win32 HANDLE of the CRT heap.

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_get_sbh_threshold

Return the upper limit for the size of a memory allocation that will be supported by the small-block heap

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_heapadd

Add memory to heap

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_heapchk

Check heap for consistency

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_heapmin

Release unused memory in heap

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_heapset

Fill free heap entries with specified value

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_heapwalk

Return information about each entry in heap

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

malloc

Allocate block of memory from heap

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_malloc_dbg

Debug version of malloc; only available in the debug versions of the run-time libraries

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_msize

Return size of allocated block

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_msize_dbg

Debug version of _msize; only available in the debug versions of the run-time libraries

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

new

Allocate block of memory from heap

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

new[]

Allocate block of memory from heap

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_query_new_handler

Return address of current new handler routine as set by _set_new_handler

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_query_new_mode

Return integer indicating new handler mode set by _set_new_mode for malloc

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

realloc

Reallocate block to new size

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_realloc_dbg

Debug version of realloc; only available in the debug versions of the run-time libraries

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_set_new_handler

Enable error-handling mechanism when new operator fails (to allocate memory) and enable compilation of Standard Template Libraries (STL)

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_set_new_mode

Set new handler mode for malloc

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

_set_sbh_threshold

Set the upper limit for the size of a memory allocation that will be supported by the small-block heap

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

Community Additions

ADD
Show:
© 2015 Microsoft