C语言free函数的用法(附带实例)
C语言 free() 函数的功能是释放指针 ptr 指向的内存区域,使该内存区域能被其他变量所使用。
free() 函数的原型如下:
例如,释放一个分配给整型变量的内存空间:
【实例】将分配的内存进行释放,释放前先输出一次内存中保存的数据,释放后再利用指针输出一次。观察两次的结果,可以看出,调用 free() 函数之后内存被释放了。
free() 函数的原型如下:
void free(void *ptr);其中,ptr 是最近一次调用 calloc() 或 malloc() 函数时返回的值。free() 函数无返回值。
例如,释放一个分配给整型变量的内存空间:
free(pInt);代码中,pInt 为一个指向整型大小的内存空间,使用 free() 函数将其进行释放。
【实例】将分配的内存进行释放,释放前先输出一次内存中保存的数据,释放后再利用指针输出一次。观察两次的结果,可以看出,调用 free() 函数之后内存被释放了。
#include <stdio.h> #include <stdlib.h> int main() { int* plnt; /* 定义整型指针 */ plnt = (int*)malloc(sizeof(int)); /* 分配整型空间 */ *plnt = 100; /* 赋值 */ printf("分配的值是:%d\n", *plnt); /* 将值进行输出 */ free(plnt); /* 释放该内存空间 */ printf("释放完内存的值是:%d\n", *plnt); /* 将值进行输出 */ return 0; }运行程序,结果为:
分配的值是:10
释放完内存的值是:-572662307