free(p),是啥意思?是单纯p==NULL还是说p指向的内容变为空。使用free()之后 p和内存的状态是啥情况的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了free(p),是啥意思?是单纯p==NULL还是说p指向的内容变为空。使用free()之后 p和内存的状态是啥情况的相关的知识,希望对你有一定的参考价值。

free(p),是什么意思?是单纯p==NULL还是说p指向的内容变为空。使用free()之后 p和内存的状态是什么情况的

new之后你会得到一块地盘(内存空间),里面的内容随你改,其他程序不得动用。
free(p) 后P指向的那块地不再归你使用,里面的内容不一定变化,但是P还是指着那不动。
单纯的p==NULL的话,P指向0,那块地还是归你使用,其他程序不得动用,但是你再也找不到那块地了,这就是内存泄露。
参考技术A free()和malloc()是对应的。后者是申请内存,而前者释放内存。动态申请内存时,他们一般是成对使用的,申请了内存,使用完之后要将它释放掉,否则容易造成内存泄露。如果free的是指针,一般情况下,free(p)了之后,此时内存被释放掉了,但是p指向的地址不变,最好加一句p = NULL,将地址置0,防止产生野指针,之后的程序又调用出错。 参考技术B free(p):释放之前申请的内存。它只是把内存还给系统,p指向的值不变(即还是原来的地址)。

MPEG中,I帧,P帧,B帧各含义是啥?

参考技术A �粲谥∧谘顾酢>褪呛虯VI的压缩是一样的。P是向前搜索的意思。B是双向搜索。他们都是基于I帧来压缩数据。由于会有误差。本回答被提问者采纳

以上是关于free(p),是啥意思?是单纯p==NULL还是说p指向的内容变为空。使用free()之后 p和内存的状态是啥情况的的主要内容,如果未能解决你的问题,请参考以下文章

求助 一个指针被free之后啥时候是NULL?还是不可能是NULL?

关于C语言free函数的问题

c语言中,malloc和free是啥意思?

数据结构链表中,p是指针,L是链表,那么p=L是啥意思,是p指向L的头结点,还是p等于L的每个值

reject the null hypothesis是啥意思

c语言&*p 是啥