C语言的问题,求解!

C语言的单循环链表里面的节点 free()释放之后,里面还剩什么?释放之后在打印却是垃圾数据?#C/C++#
全部评论
free一个指针以后,这块内存就会标记成不可用的。 那可以再去访问这个指针变量指向的地址吗?可以的,但是这个行为是未定义的。实际上这个地址指向的内存区域已经被释放了,再去访问可能出现无法预料的行为。 举个粗浅的例子: 假设张三有一个朋友(数据),原来住在xx小区xx栋xx单元xx房(指针),张三非常喜欢去这位朋友家做客(访址)。 后来朋友搬家搬走了(指针指向的内存被释放),请问张三还可以去这个地址吗?当然可以,只不过房子可能是空的,也可能住了另一家人(不确定的数据),于是张三和他们认识了;另外也可能住着一群犯罪分子,于是张三……(异常情况)。
3 回复 分享
发布于 2020-11-28 15:12
代码呢
点赞 回复 分享
发布于 2020-11-27 20:06
满帮集团
校招火热招聘中
官网直投

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务