- prototype in malloc.h - num = count of elements to allocate - size = size of each element; each element is set to zero; must be a power of 2 if size is over 128K - alignment assures compatibility with all data types (para) - returns pointer to allocated block on success or NULL on failure - allocates memory directly from DOS - see hfree()