与申请字节空间有关的三个函数
#include<stdlib.h>
向堆区申请字节空间来使用:我们在堆区申请的字节空间,如果不主动释放,那么系统是不会释放掉的,除非程序结束
1)malloc():向堆空间申请指定连续的字节空间来使用【参数是size_t类型的,也就是unsigned long】
返回值是void *,返回的是创建的空间中第一个字节的地址
2)calloc():calloc申请的字节,申请完之后,系统会将字节中的数据清零
3)realloc():当我们发现我们之前在堆区申请的字节空间不够用的时候,就可以使用realloc函数来为我们的字节空间扩容
【如果原来的空间后面还有剩余的空间,并且足够扩容,那么直接就扩容在后面;如果原来的空间后面有剩余空间但是剩下的空间不够扩容,就重新找一块足够的空间申请,将原来的数据拷贝过来,原来的空间被自动释放】
空间由3个变成4个,扩容了一个: