当前位置:首页 > 代码 > 正文

free函数源代码(Free函数)

admin 发布:2022-12-19 22:37 138


今天给各位分享free函数源代码的知识,其中也会对Free函数进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

C语言中free函数的用法

free函数的用法释放ptr指向的存储空间。被释放的空间通常被送入可用存储区池,以后可在调用malloc、realloc以及calloc函数来再分配。

free 不管指针指向多大的空间,均可以正确地进行释放,这一点释放比 delete/delete [] 要方便。如在分配指针时,用的是new或new[]。

在释放内存时,并不能图方便而使用free来释放。反过来,用malloc 分配的内存,也不能用delete/delete[]来释放。

举例:

int* p = (int *) malloc(4);

*p = 100;

free(p); //释放 p 所指的内存空间

或者:

int* p = (int *) malloc ( sizeof(int) * 100 ); //分配可以放得下100个整数的内存空间。

……

free(p);

扩展资料

1、free是和malloc、realloc或者calloc函数成对出现的,来保证动态分配的空间及时释放。

2、一块动态申请的内存用free释放一次就够。

在C语言中,free()函数怎么知道释放多大的空间

这个问题有意思,查了下资料,在申请内存块时会在内存块前面几个字节存储内存块的大小。所以free()函数只要把首地址往前推就可以读取内存块的大小了。

C语言 写一函数free,将前面new函数占用的空间释放,free(o)表示将p(地址)指向的单元以后的内存段释放

抱歉我之前看错了。我写了一段代码,没问题啊,你看看:

#includestdio.h

char newbuf[1000];

char *newp=newbuf;

void free(char *p)

{

if(pnewbufpnewbuf+1000)

p=newp;

}

int main()

{

char a='a';

char *p=a;

free(p);

return 0;

}

关于free函数源代码和Free函数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/28025.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载