Share via


IMalloc::Alloc (Compact 2013)

3/26/2014

This method allocates a block of memory.

Syntax

void* Alloc(
  ULONG cb 
);

Parameters

  • cb
    [in] Size, in bytes, of the memory block to be allocated.

Return Value

If successful, IMalloc::Alloc returns a pointer to the allocated memory block.

If insufficient memory is available, IMalloc::Alloc returns NULL.

Remarks

The IMalloc::Alloc method allocates a memory block in essentially the same way that the C Library malloc function does.

The initial contents of the returned memory block are undefined. There is no guarantee that the block has been initialized, so you should initialize it in your code. The allocated block may be larger than cb bytes because of the space required for alignment and for maintenance information.

If cb is zero, IMalloc::Alloc allocates a zero-length item and returns a valid pointer to that item. If there is insufficient memory available, IMalloc::Alloc returns NULL.

Note

Applications should always check the return value from this method, even when requesting small amounts of memory, because there is no guarantee the memory will be allocated.

To determine whether the platform supports this interface, see Determining Supported COM APIs.

Requirements

Header

objidl.h,
objidl.idl

Library

ole32.lib

See Also

Reference

IMalloc
IMalloc::Free
IMalloc::Realloc