2011年7月22日

常见的动态内存分配错误

摘要: 在使用动态分配的内存时,常出现的错误为:对null指针进行解引用操作(*),对分配的内存进行操作时越过边界,释放并非动态分配的内存、试图释放一块动态分配的内存的一部分以及一块动态内存被释放之后被继续使用。传递给free的指针必须是从malloc、calloc、realloc函数返回的指针,传给free函数一个指针,让它释放一块并非动态分配的内存可能导致程序立即终止或在晚些时候终止。试图释放一块动态分配的内存的一部分也可能引起类似问题。例如pi = malloc(10 * sizeof(int));free(pi + 5);//释放后五个这样企图释放内存的一部分是不容许的,必须整块一起释放。但r 阅读全文

posted @ 2011-07-22 13:05 dusts 阅读(1052) 评论(0) 推荐(0)

导航