C语言指针及内存问题
多个指针在指向同一个变量时,每用一次就需要释放一次。这个释放是什么意思?我自己对变量内存的理解是:内存里面存着数据,那内存不是一直被占用吗?为什么要释放,释放之后数据不就没了吗。。。
如果不释放内存空间就会造成内存泄漏。内存泄漏是什么,为什么会内存泄漏?
1,用完了就释放了啊,不然待会没地方可用了
2,https://wenda.so.com/q/1414912718726509 你开船运货,是会吧货物放在码头,还是在码头卸货后运往仓库储存?
做个不严谨的比喻:货物=数据, 码头=内存, 仓库=硬盘 我个人的浅薄认识:
涉及到所谓的“释放”,那一定匹配一个“申请”(内存)。
不是所有的指针都需要释放,而是通过申请而来,常见的就是malloc申请出来,只要有一个申请必然对应有一个释放。
内存泄漏,我的理解:
内存的容量是固定的,4GB就是4GB,8GB就是8GB,就像一个县政府就管着100亩地,不能无节制的申请,1人/亩,撑死了也就是有100个人同时在使用地
你种地收获了不需要的时候,记得把地还给政府,不然若处于饱和状态下,就无法再供给别人使用了。
但一种极端情况出现的时候就很危险,没人还地,但不停地有人申请向政府要地,而政府还在审批同意,要不要出现问题?要不要崩溃?
页:
[1]