free函数不是把p指向的内存空间释放了吗?为什么我还可以使用它的空间,编译运行都没有出错?是哪里出了问题?还是我理解错了什么
本来就是如此,甚至你不分配空间,拿p瞎指一个地址,都可以赋值。C不会对它检查。
“虽然释放了内存空间 但是由于你重新定义了 是一个int值 所以又自动分配了内存”这个回答是错的。不会分配内存,此时往p赋值,结果不可预料。
虽然释放了内存空间 但是由于你重新定义了 是一个int值 所以又自动分配了内存