位置:首页 > 软件操作教程 > 编程开发 > C语言 > 问题详情

C语言 calloc()函数

提问人:刘团圆发布时间:2020-12-03

calloc()函数原型如下:

    void *calloc(size_t n, size_t size);

其功能为:在内存的动态存储区中分配n个长度为size的连续空间。callocO函数返回一个指向分配起始地址的指针;如果分配不成功,返回NULL。

    calloc()在动态分配完内存后,自动初始化该内存空间为零,而malloc()不初始化,里边的数据是随机的垃圾数据。

    一般使用后要使用free(起始地址的指针)对内存进行释放,不然内存申请过多会影响计算机的性能,导致重启计算机。如果使用过后不清零,还可以使用指针对该块内存进行访问。

【例题】分配空间

利用callocO分配完存储空间后,将元素初始化。程序如下:

#include〈stdio.h〉

#include<stdlib.h>

#include<string.h>


int main()

{

    char*str = NULL;

    /*分配内存空间*/

    str = (char*)calloc(10,sizeof(char)); 

    /*将hello写入*/ 

    strcpy (str, "Hello");

    /*显示变量内容*/

    printf("String is %s\n", str);

    /*释放空间*/ 

    free (str); 

    return 0;

}

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部