7.8 C语言中,调用free()之后指针没有变空?

当你调用free() 的时候, 传入指针指向的内存被释放,

但调用函数的指针值可能保持不变,

因为C的按值传参语义意味着被调函数永远不会永久改变参数的值。

参见问题4.4。

严格的讲, 被释放的指针值是无效的, 对它的任何使用,

即使没有解参照, 也可能带来问题,

尽管作为一种实现质量的表现, 多数实现都不会对无伤大雅的无效指针使用产生例外。

永不止步步 发表于01-16 14:34 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67410个|学分:345377个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号