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 <stdio.h> #include <stdlib.h> #include <string.h> int main() { char *str; /* lan cap phat bo nho ban bau */ str = (char *) malloc(15); strcpy(str, "QTMTeam"); printf("Chuoi = %s, tai Dia chi = %u\n", str, str); /* tai cap phat lai bo nho */ str = (char *) realloc(str, 25); strcat(str, ".@gmail.com"); 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 để xem kết quả.
Theo Tutorialspoint
Bài trước: Hàm calloc() trong C
Bài tiếp: Hàm malloc() trong C
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:
-
Ngôn ngữ lập trình C là gì?
-
Hướng dẫn cài đặt C
-
Cấu trúc chương trình C cơ bản
-
Cú pháp cơ bản
-
Kiểu dữ liệu
-
Biến trong C
-
Hằng số
-
Lớp lưu trữ
-
Các toán tử
-
Điều khiển luồng
-
Vòng lặp
-
Các hàm trong C
-
abort()
-
abs()
-
atexit()
-
atof()
-
atoi()
-
atol()
-
bsearch()
-
calloc()
-
clearerr()
-
ldiv()
-
exit()
-
fclose()
-
feof()
-
ferror()
-
fflush()
-
fgetc()
-
fgetpos()
-
fgets()
-
fopen()
-
fprintf()
-
fputc()
-
fputs()
-
fread()
-
free()
-
freopen()
-
fscanf()
-
fseek()
-
fsetpos()
-
ftell()
-
fwrite()
-
getc()
-
getchar()
-
getenv()
-
gets()
-
labs()
-
labs()
-
malloc()
-
mblen()
-
mbstowcs()
-
mbtowc()
-
memchr()
-
memcmp()
-
memcpy()
-
memset()
-
perror()
-
printf()
-
putc()
-
putchar()
-
puts()
-
qsort()
-
raise()
-
rand()
-
realloc()
-
remove()
-
rename()
-
rewind()
-
scanf()
-
setbuf()
-
setvbuf()
-
signal()
-
sprintf()
-
srand()
-
sscanf()
-
strchr()
-
strcmp()
-
strcoll()
-
strcpy()
-
strcspn()
-
strerror()
-
strlen()
-
strncat()
-
strncmp()
-
strncat()
-
strncpy()
-
strpbrk()
-
strrchr()
-
strspn()
-
strstr()
-
strtod()
-
strtok()
-
strtol()
-
strtod()
-
strtoul()
-
strxfrm()
-
system()
-
tmpfile()
-
tmpnam()
-
ungetc()
-
vfprintf()
-
vsprintf()
-
wcstombs()
-
wctomb()
-
-
Quy tắc phạm vi
-
Mảng
-
Con trỏ
-
Chuỗi
-
Cấu trúc (Structure)
-
Union trong C
-
Bit Field
-
Typedef
-
Input & Output
-
Đọc và ghi file
-
Bộ tiền xử lý
-
Header File
-
Ép kiểu
-
Xử lý lỗi
-
Đệ quy
-
Tham số biến
-
Quản lý bộ nhớ
-
Tham số dòng lệnh
-
Thư viện C
-
Switch
-
Enumeration (enum)
Hướng dẫn AI
Học IT
AI
Hàm Excel