C ทำงานห้องสมุด - ฟรี ()
C ห้องสมุดมาตรฐาน - <stdlib.h>
ลักษณะ
โทร calloc, malloc หรือ realloc จัดสรรพื้นที่หน่วยความจำก่อนที่จะทำงานห้องสมุด Cโมฆะฟรี (void * PTR) ปล่อย
คำแถลง
นี่คือฟรี () ฟังก์ชั่นของการประกาศ
void free(void *ptr)
พารามิเตอร์
- PTR - ตัวชี้ไปยังบล็อกของหน่วยความจำเพื่อเพิ่มหน่วยความจำก่อนที่จะบล็อกหน่วยความจำจะถูกจัดสรรหน่วยความจำโดยการเรียก malloc, calloc หรือ realloc ของถ้าพารามิเตอร์ที่ผ่านมาเป็นตัวชี้โมฆะแล้วไม่มีการกระทำ
ราคาย้อนกลับ
ฟังก์ชั่นนี้ไม่ได้ส่งกลับค่า
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงให้เห็นถึงฟรี () ฟังก์ชั่นถูกนำมาใช้
#include <stdio.h> #include <stdlib.h> int main() { char *str; /* 最初的内存分配 */ str = (char *) malloc(15); strcpy(str, "w3cschool"); printf("String = %s, Address = %u\n", str, str); /* 重新分配内存 */ str = (char *) realloc(str, 25); strcat(str, ".cc"); printf("String = %s, Address = %u\n", str, str); /* 释放已分配的内存 */ free(str); return(0); }
Let 's รวบรวมและเรียกใช้โปรแกรมข้างต้นซึ่งจะส่งผลต่อไปนี้:
String = w3cschool, Address = 355090448 String = w3cschool.cc, Address = 355090448