calloc(), malloc(), realloc(), free()
void *calloc(size_t nobj, size_t size);分配足夠的內存給nobj個大小為size的對象組成的數組, 并返回指向所分配區域的第一個字節的指針;
若內存不夠,則返回NULL. 該空間的初始化大小為0字節.

void *malloc(size_t size);
分配足夠的內存給大小為size的對象, 并返回指向所分配區域的第一個字節的指針;
若內存不夠,則返回NULL. 不對分配的空間進行初始化.

void *realloc(void *p, size_t size);
將p所指向的對象的大小改為size個字節.
如果新分配的內存比原內存大, 那么原內存的內容保持不變, 增加的空間不進行初始化.
如果新分配的內存比原內存小, 那么新內存保持原內存的內容, 增加的空間不進行初始化.
返回指向新分配空間的指針; 若內存不夠,則返回NULL, 原p指向的內存區不變.


void free(void *p);
釋放p所指向的內存空間; 當p為NULL時, 不起作用.
p必先調用calloc, malloc或realloc.
