_aligned_msize
Returns the size of a memory block allocated in the heap.
Syntax
size_t _aligned_msize(
void *memblock,
size_t alignment,
size_t offset
);
Parameters
memblock
Pointer to the memory block.
alignment
The alignment value, which must be an integer power of 2.
offset
The offset into the memory allocation to force the alignment.
Return value
Returns the size (in bytes) as an unsigned integer.
Remarks
The _aligned_msize
function returns the size, in bytes, of the memory block allocated by a call to _aligned_malloc
or _aligned_realloc
. The alignment
and offset
values must be the same as the values passed to the function that allocated the block.
When the application is linked with a debug version of the C run-time libraries, _aligned_msize
resolves to _aligned_msize_dbg
. For more information about how the heap is managed during the debugging process, see The CRT debug heap.
This function validates its parameter. If memblock
is a null pointer or alignment
isn't a power of 2, _aligned_msize
invokes an invalid parameter handler, as described in Parameter validation. If the error is handled, the function sets errno
to EINVAL
and returns -1.
By default, this function's global state is scoped to the application. To change this behavior, see Global state in the CRT.
Requirements
Routine | Required header |
---|---|
_aligned_msize |
<malloc.h> |
For more compatibility information, see Compatibility.
Libraries
All versions of the C run-time libraries.