發(fā)布于:2021-02-05 11:35:20
0
230
0
什么是C中的free()函數(shù)?
C庫(kù)中的free()函數(shù)允許您釋放或取消分配先前由calloc(),malloc()或realloc()函數(shù)分配的內(nèi)存塊。它釋放內(nèi)存塊,并將內(nèi)存返回堆。它有助于釋放程序中的內(nèi)存,以供以后使用。
在C語(yǔ)言中,變量的內(nèi)存在編譯時(shí)自動(dòng)釋放。對(duì)于C中的動(dòng)態(tài)內(nèi)存分配,您必須顯式地取消分配內(nèi)存。如果未完成,則可能會(huì)遇到內(nèi)存不足錯(cuò)誤。
語(yǔ)法
void free(void *ptr)
這里,ptr是需要釋放的內(nèi)存塊。
例如:
#includeint main() {
int* ptr = malloc(10 * sizeof(*ptr));
if (ptr != NULL){
*(ptr + 2) = 50;
printf("Value of the 2nd integer is %d",*(ptr + 2));
}
free(ptr);
}
輸出
Value of the 2nd integer is 50
作者介紹
熱門(mén)博客推薦