7.8 C语言中,调用free()之后指针没有变空?
当你调用free() 的时候, 传入指针指向的内存被释放, 但调用函数的指针值 可能保持不变, 因为C 的按值传参语义意味着被调函数永远不会永久改变参数的 值。参见问题4.4。
严格的讲, 被释放的指针值是无效的, 对它的任何使用, 即使没有解参照, 也可 能带来问题, 尽管作为一种实现质量的表现, 多数实现都不会对无伤大雅的无效指 针使用产生例外。
严格的讲, 被释放的指针值是无效的, 对它的任何使用, 即使没有解参照, 也可 能带来问题, 尽管作为一种实现质量的表现, 多数实现都不会对无伤大雅的无效指 针使用产生例外。