- 博客(1)
- 收藏
- 关注
原创 利用二级指针进行释放单链表所有节点内存,并将指针赋值NULL
因为子函数内接收的结构体指针“H”,其开辟内存在子函数的堆中,而主函数中链表H空间在主函数中的堆空间,无法修改到实参所存储的值(H->data:用户输入数值,H->next下一节点地址)。但由于p和H是两个不同的指针,p = NULL,而H所存储的的地址值仍未改动,还是存储的原先地址,而由于H空间被释放,所以链表上每个节点的指针都变成了野指针,所以遍历链表会出现段错误。使用一级指针做参数,无法修改主函数里的实参H所存储的值,只能释放H所在空间,之后节点指针变成野指针。记得二级指针在主函数中创建内存。
2024-09-29 17:01:26 154
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人