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
*/


总结

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

猜你喜欢

转载自blog.csdn.net/freecls/article/details/80333441