C语言小问题
zhang_wenshuo
这个作者很懒,什么都没留下…
展开
-
free报错问题(转载-未经允许备忘用-链接在正文中)
malloc后free出错总结: 1、malloc与free配套使用。不要跨进程分配和释放; 2、指向malloc申请的堆内存的指针,在运用过程中千万不要另外赋值,否则同样导致内存泄露(我曾经犯过这样的错误) 3、malloc后,实际使用时指针长度超过了你申请的范围。再去free时肯定出问题。 4、改变指针的初始指向地址。 ———————————————— 版权声明:本文为CSDN博主「__N4c1__」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https转载 2021-11-04 20:44:30 · 504 阅读 · 1 评论 -
二级指针内存无法读取的问题
我们先来看一段代码: char** aa=(char**)malloc(initsize*sizeof(char)); aa[0][0]='c'; 这个时候就会报错,原因是内存无法读取。 为什么呢:我们在使用 char** aa=(char**)malloc(initsize*sizeof(char)); 的时候,只分配了aa[0]这个子字符串的内存,也就是说只分配到了第一级指针。第二级指针的内存是没有被分配的 当我们需要调用的时候,首先应当对二级指针区域进行分配,之后才可以进行操作。需要操作原创 2021-11-01 20:04:55 · 511 阅读 · 0 评论