戴磊的博客

小伙伴们如果有啥疑问请到http://www.freecls.com/u/info/2712地址给我发私信,也可以在文章原文地址评论区留言...

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

阅读更多
个人分类: linux c
想对作者说点什么? 我来说一句

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

不良信息举报

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

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭