下面的代码会导致内存泄漏吗?
- #include<stdio.h>
- void main(void)
- {
- char *ptr = (char*)malloc(10);
- if(NULL == ptr)
- {
- printf("\n Malloc failed \n");
- return;
- }
- else
- {
- // Do some processing
- }
- return;
- }
尽管上面的代码并没有释放分配给“ptr”的内存,但并不会在程序退出后导致内存泄漏。在程序结束后,所有这个程序分配的内存都会自动被处理掉。
但如果上面的代码处于一个“while循环”中,那将会导致严重的内存泄漏问题!while循环一定要特别注意!
|