Hàm free() trong C | Thư viện C chuẩn




Hàm free() trong C

Hàm void free(void *ptr) giải phóng bộ nhớ đã được cấp phát trước đó bởi một lời gọi tới calloc, malloc, hoặc realloc

Khai báo hàm free() trong C

Dưới đây là phần khai báo cho free() trong C:

void free(void *ptr)

Tham số

  • ptr: Đây là con trỏ tới khối bộ nhớ đã được cấp phát trước đó với malloc, calloc hoặc realloc để được giải phóng. Nếu tham số truyền vào là một con trỏ null, thì không hành động nào diễn ra.

Trả về giá trị

Hàm này không trả về bất cứ giá trị nào.

Ví dụ

Chương trình C sau minh họa cách sử dụng của free() trong C:

#include 
#include 
#include int main()
{
   char *str;   /* lan cap phat bo nho ban bau */
   str = (char *) malloc(15);
   strcpy(str, "VietJackTeam");
   printf("Chuoi = %s,  tai Dia chi = %u\n", str, str);   /* tai cap phat lai bo nho */
   str = (char *) realloc(str, 25);
   strcat(str, "[email protected]");
   printf("Chuoi = %s,  tai Dia chi = %u\n", str, str);   /* Giai phong bo nho da cap phat */
   free(str);
   
   return(0);
}

Biên dịch và chạy chương trình C trên sẽ cho kết quả:

Hàm free trong C

Các bài Thư viện C phổ biến khác tại VietJack:


stdlib-h-trong-c.jsp