内存分配

void* malloc(size_t __size)

只有一个参数,为内存分配的大小,分配完内存后,里面的数据可能是垃圾数据

void* calloc(size_t __count, size_t __size)

两个参数,分别表述元素的数目和每个元素的大小。乘积为需要分配的内存空间大小,分配后里面的数据为空

void* valloc(size_t)

与malloc相同,但是分配的内存空间大小是对齐的

void* realloc(void *__ptr, size_t __size)

用于重新分配内存空间

void* alloca(size_t)

在栈里分配内存,不需要手动回收,function结束后自动回收