美文网首页
C语言大佬教你如何理解指针、数据与内存的关系

C语言大佬教你如何理解指针、数据与内存的关系

作者: 魔法打败魔法 | 来源:发表于2019-12-07 10:52 被阅读0次

    函数接受数组时,必须知道数组元素个数
    函数里面是通过指针变量来接收数组的地址
    指针变量无法确定指向的内容的大小
    常量字符串内存空间由系统自动分配
    在静态区里面分配 当程序结束才会释放
    常量区<- 常量 const
    静态区<- static 静态变量只会被定义一次 生命周期:从开始到结束
    栈<- 局部变量 (离开作用域就自动收回)
    堆<-自己申请的内存 malloc calloc realloc (必须自己释放)
    动态分配内存:
    1.为什么需要:存储的数据需要延长生命
    2.一个指针变量需要存储数据,但变量本身只能存储地址,不能存储数据,需要分配内存空间来存储数据
    如果使用指针变量接受数据 必须先为这个指针变量分配一片指向的内存空间
    有内存空间才能存数据

    使用头文件stdlib.h
    使用malloc (memory alloc)申请内存空间

    name = (char )malloc(10sizeof(char));
    使用完毕必须手动释放内存 free(name);
    使用realloc动态改变已经分配内存的大小 增加或者减少
    name = (char )realloc(name,20sizeof(char));

    QQ截图呀呀哎呀.png
    exit(EXIT_FAILURE);退出之前必须将之前分配的内存释放掉

    相关文章

      网友评论

          本文标题:C语言大佬教你如何理解指针、数据与内存的关系

          本文链接:https://www.haomeiwen.com/subject/ynlegctx.html