当前位置:首页>开发>正文

C语言内存泄露的问题 C语言中内存泄漏的源码

2023-05-18 02:08:04 互联网 未知 开发

 C语言内存泄露的问题 C语言中内存泄漏的源码

C语言内存泄露的问题

*p = (char *)malloc(num)这里申请了内存但没释放
void Test(void)
{
char *str = NULL
GetMemory(&str, 100)
strcpy(str, "hello")
printf(str)
free(str)//加这句

}

C语言中内存泄漏的源码

内存泄漏一般是指:程序动态分配的堆内存在使用完后没有被释放.有两类内存泄漏情况:一.在ring3下内存泄漏(临时性的ring0内存泄漏)二.在ring0下内存泄漏.前者的一般不会造成严重问题,顶多程序卡死,当进程终止,所有该进程的内存泄漏随之变得无意义.而后者则会造成系统卡死甚至倒塌.至于c程序,不言自明.

C 内存泄漏后继会出现什么结果?

C 内存泄漏 是你创建了一块内存但是当你不使用它的时候,没有对它进行释放。如此,这块内存就会被标记 要使用,但其实你已经不用它了。造成的后果就是其他程序不可以使用这块内存。
内存泄漏也称作“存储渗漏”,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。(其实说白了就是该内存空间使用完毕之后未回收)即所谓内存泄漏。

最新文章