malloc、calloc、realloc的区别

发布时间 2023-10-29 13:28:18作者: yuzuzu
  • malloc
    • 指名申请空间的大小(byte即字节个数);
    • 所申请的存储空间时未初始化的,值未定义;
    • 返回所申请空间的地址。
       
  • calloc
    • 指明申请多少个元素,每个元素的字节个数;
    • 存储空间已经初始化;
    • 常用于数组;
    • 返回地址。
       
  • realloc
    • 再开辟;
    • 在原有的堆空间上调整存储空间的大小,增大的值未定义;
    • 原有的空间未NULL,则相当于malloc;
    • 原有的空间大小为0,则相当于free;
    • 返回新的地址空间。