A function in the C Programming language that, like splidge said, should always have an acompanying free() called when you are done using the pointer in question. malloc is used to find and allocate free memory to a pointer.

void * malloc(size_t size)

malloc() can be used like this:

char * myString;
myString = (char *)malloc(512);

This code snippet will create a character pointer called myString, and then allocate 512 bytes of available memory to it. It the frees the memory when done, so you don't get a memory leak.