linux c动态内存分配函数malloc calloc free

原文地址http://www.freecls.com/a/2712/21

void *malloc(size_t size)

分配size个字节的内存,成功返回内存地址,失败返回NULL

void *calloc(size_t n, size_t size)

分配n*size个字节内存,并把分配到的内存所有位置0,成功返回内存地址,失败返回NULL

void free(void *ptr)

释放动态分配的内存


例子

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(){
    char *url = (char *)malloc(30);
    strcpy(url, "http://www.freecls.com");
    
    char *name = (char *)calloc(20, sizeof(char));
    strcpy(name, "沧浪水");
    
    puts(name);
    puts(url);
    
    free(name);
    free(url);
}
/*
沧浪水
http://www.freecls.com
*/

详细介绍可以参照另一篇《linux动态内存分配

总结

1.本文对linux c内存相关函数做了简单的介绍,如果有疑问可以给我留言
2.gcc4.8,运行环境centos7 64位
3.原文地址http://www.freecls.com/a/2712/21

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试