C语言中指针释放问题,函数free()的使用。

各位大虾们,C语言中如果不是指向使用malloc,realloc、calloc动态申请的内存的指针,是不是就不需要free()释放该指针了呢? 比如说申请了一个指向结构体的指针,
或者是指向一个整型变量的指针。谢谢各位大虾。

对。用malloc,realloc、calloc等动态分配的内存必须用free()释放。
不是动态分配的内存,不需要用free释放。

如果你没用*alloc *函数的话,你应该并没有申请内存,你只是定义了一个指针变量而已,当然就不用free释放了。

你动态申请了内存,就必须要释放。
如果使用一个指针,指向一块已经存在内存,就不用去释放它。