1、三个函数的原型:包含stdlib.h
void *malloc( size_t size );
void *calloc( size_t num, size_t size );
extern void *realloc(void *mem_address, unsigned int newsize);
2、三者之间的区别
相同点都是在堆上开辟一片内存。
不同点:
malloc直接在堆上开辟一片内存;
calloc在堆上开辟一片内存,并对该片内存进行初始化;
realloc 更改以前分配区的长度(增加或减少);
realloc有两种情况:
1、后面内存没人用,直接拓展变长;
2、后面的内存有人用,重新分配新的内存,拷贝原来的内存,再释放原来的内存,可用来让数组变长!