void* malloc(size_t size)
malloc函数用来开辟一段连续的内存空间,开辟成功返回值为这块内存空间的地址,开辟失败返回值为NULL,size为空间的大小,单位为字节。在用malloc开辟空间后要检查是否开辟内存成功,使用完这段内存后要用free(void* ptr)释放内存,否则会造成内存泄漏。
void* calloc(size_t num,size_t size)
calloc函数用来开辟num个size大小连续的内存空间,开辟成功返回值为这块内存空间的地址,开辟失败返回值为NULL。在用calloc开辟空间后要检查是否开辟内存成功,使用完这段内存后要用free(void* ptr)释放内存,否则会造成内存泄漏。
malloc与calloc的区别为:calloc会在返回地址之前把申请的空间的每个字节初始化为全0。
void* realloc(void* ptr,size_t size)
realloc函数用来对malloc或calloc开辟的空间进行扩容,ptr为malloc或calloc的起始地址,size为新开辟的空间的大小。