请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

正在回答 回答被采纳积分+3

1回答

bennyhuo 2023-02-02 15:27:54
因为这个指针在外部还有效,它指向的内存free了,如果不把它置为null的话,外部就无法知道这个指针指向的内存是否存在,就可能出现非法访问。
0 回复 有任何疑惑可以回复我~
  • 也就是free之后还可以调用,但是会得到一个编译器给出的默认值,而赋为null就相当于创造了一个自己认识的默认值
    回复 有任何疑惑可以回复我~ 2023-02-07 16:30:31
  • bennyhuo 回复 提问者 weixin_慕设计1048130 #2
    不是,free之后,指针的值指向的还是原来的内存,但这块内存已经不可用了,这时候这个指针也被称为野指针。如果再次访问,就会出现内存错误,置为null的话,后面使用时可以通过比较是否为null来得知内存是否可用。
    回复 有任何疑惑可以回复我~ 2023-02-07 18:05:46
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信