很多时候开辟和释放都是成对的,这样是为了避免产生内存泄漏,还有一种情况下容易导致这种错误,就是程序中某些异常控制中,当出现类似于文件读写打不开的时候,直接RETURN,而忽略了前面动态开辟的 内存,一般情况下,正常下退出时都还是比较能记得释放。。。
一定要注意在异常发生后,RETURN前也要进行释放。。。否则同样会产生内存泄漏!
其次就是在开辟内存之后应该记得初始化新开辟的空间(对连续空间使用MEMSET(...)),不然某种情况下也有可能出现很难查找到的BUG。。。
很多时候开辟和释放都是成对的,这样是为了避免产生内存泄漏,还有一种情况下容易导致这种错误,就是程序中某些异常控制中,当出现类似于文件读写打不开的时候,直接RETURN,而忽略了前面动态开辟的 内存,一般情况下,正常下退出时都还是比较能记得释放。。。
一定要注意在异常发生后,RETURN前也要进行释放。。。否则同样会产生内存泄漏!
其次就是在开辟内存之后应该记得初始化新开辟的空间(对连续空间使用MEMSET(...)),不然某种情况下也有可能出现很难查找到的BUG。。。