C语言内存分配问题( 二 )


NO.3:正确答案为可以打印出hello.但内存泄漏了!
NO.4: 申请空间 , 拷贝字符串 , 释放空间.前三步操作都没有任何问题.到if语句里的判断条件开始出错了 , 因为一个指针被释放之后其内容并不是NULL , 而是一个 不确定的值.所以if语句永远都不能被执行.这也是著名的"野"指针问题.所以我们在编写程序释放一个指针之后一定要人为的将指针付成NULL.这样就会 避免出现"野"指针的出现.有人说"野"指针很可怕 , 会带来意想不到的错误.

【C语言内存分配问题】


推荐阅读