我想用C编程.我想知道我们应该遵循什么样的做法来避免内存泄漏
在发展本身.请注意特别注意的事项
处理字符串和动态内存分配.
在发展本身.请注意特别注意的事项
处理字符串和动态内存分配.
解决方法
如果可能,请在堆栈上使用变量,而不是使用堆中的内存.
尽量避免常见错误,一些指示:
>确保在使用malloc()或calloc()时调用free().
>不要首先重新分配指向已分配内存位置的指针,而不要先释放它,即不要丢失引用.
>使用realloc()时要小心.不要使用相同的指针输入&输出参数.
避免使用字符串犯下的常见错误,一些指示:
>确保有用于终止NUL字符的内存.
>确保在所有用例中终止字符串NUL(即使在strncpy()等函数中使用时也是如此)
学习使用调试器(gdb)
学习使用静态分析工具. splint,valgrind,clang等工具可以从您的发行版软件包库中安装到Linux系统上.
几个有用的链接:
c-faq – Arrays & Pointers
c-faq – Memory allocation
Secure C Coding – Memory Management
SO Question related to avoiding memory leak in C/C++
yolinux tutorial
希望这可以帮助!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。