常见的动态内存错误
2010-02-03 20:11
239 查看
来自:c和指针.P223
在使用动态内存分配的程序中,常常会出现许多错误。这些错误包括对NULL指针进行解除引用操作、对分配的内存进行操作时越过边界、释放并非动态分配的内存、试图释放一块动态分配的内存的一部分以及一块动态内存被释放之后还继续使用它。以下是一些需要注意的事项:
1、在请求动态内存分配时,要检查所请求的内存是否成功分配。
2、操作内存时,不要超过动态分配的内存的边界。对分配的内存之外的区域进行访问可能会破坏别的数据,
产生一些莫名其妙的很难发现的bug。
3、传递给free的指针必须是一个从malloc、calloc、realloc函数返回的指针。
4、动态分配的内存必须整块一起释放,不允许释放一块动态分配的内存的一部分(realloc函数可以缩小一块动
态分配的内存,有效地释放它尾部的部分内存)。
在使用动态内存分配的程序中,常常会出现许多错误。这些错误包括对NULL指针进行解除引用操作、对分配的内存进行操作时越过边界、释放并非动态分配的内存、试图释放一块动态分配的内存的一部分以及一块动态内存被释放之后还继续使用它。以下是一些需要注意的事项:
1、在请求动态内存分配时,要检查所请求的内存是否成功分配。
2、操作内存时,不要超过动态分配的内存的边界。对分配的内存之外的区域进行访问可能会破坏别的数据,
产生一些莫名其妙的很难发现的bug。
3、传递给free的指针必须是一个从malloc、calloc、realloc函数返回的指针。
4、动态分配的内存必须整块一起释放,不允许释放一块动态分配的内存的一部分(realloc函数可以缩小一块动
态分配的内存,有效地释放它尾部的部分内存)。
相关文章推荐
- 常见动态内存错误---内存泄漏 .
- 三种常见的动态内存的管理错误
- 常见动态内存错误---内存泄漏
- 【C基础】常见动态内存错误
- C++学习之动态内存管理常见三种错误
- 常见动态内存错误---内存泄漏
- 常见的动态内存分配错误
- 常见的动态内存的管理错误
- 常见的动态内存错误
- 常见动态内存的管理程序错误
- 常见的C语言内存错误及对策
- 常见的内存错误
- 大内高手—常见内存错误
- C++常见内存错误及解决方案
- 大内高手—常见内存错误
- [置顶] 动态申请内存,释放出现错误
- Unity中常见错误/常见小知识(动态补充)
- 转载--大内高手—常见内存错误
- 内存分配方式及常见错误
- 内存分配和常见错误——高质量C、C++编程指南