C语言理论篇 您所在的位置:网站首页 为什么要释放指针呢英语翻译 C语言理论篇

C语言理论篇

2024-07-11 22:44| 来源: 网络整理| 查看: 265

常量区 常量 const int a=1;程序结束时释放 静态区 static 直到程序结束才会被释放内存 静态变量只会被初始化一次,生命周期从开始(预编译)到程序结束为止 栈 局部变量 int a=10;作用于代码块,出了代码块就释放 堆 自己申请的内存(malloc calloc realloc) 必须自己释放内存 为什么需要分配内存: 1.存储的数据需要延长生命周期 2.一个指针变量需要存储数据,变量本身只能存地址,不能存数据,需要分配内存空间来存储数据,必须为指针变量分配内存空间,用malloc,引入stdlib.h 如何分配内存 char *name; name=(char *)malloc(10*sizeof(char)); 格式:malloc(需要对应数据类型空间的数量*sizeof(对应的数据类型)),前面需要对其声明,(数据类型*) 动态分配内存的本质:malloc函数在内存中申请了一片连续指定大小的空间单元格,然后返回那片连续单元格的首地址 name=(char*)realloc(name,20*sizeofz(char))//重新分配已经分配的动态内存 格式:realloc(需要重新分配的指针名,对应数据类型空间的数量*sizeof(对应的数据类型)) 为了不浪费空间,程序结束之间需要释放申请的内存,free(name); 以上具体的使用会在实战篇中体现



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有