文章目录
malloc/calloc/realloc三者大比拼
✅相同点
malloc/calloc/realloc
都是C语言中用来进行动态内存申请的库函数malloc/calloc/realloc
申请的空间都在堆上,用完之后必须使用free
释放- 如果空间申请成功,返回空间的首地址,如果申请失败发布会的是
NULL
,因此在使用之前必须要进行判空 - 返回值都是
void*
,在接收返回值时必须要进行强转
✅不同点
✔void* malloc(size_t size)
1.参数个数
malloc
的参数是一个
size
:表示用户申请空间的字节数
2.初始化
malloc
不会对申请的空间进行初始化
✔void * calloc(size(t num,size_t size)
1.参数个数
calloc
的参数是两个
num
:表示元素的个数