C Func free - sonkoni/Koni-Wiki GitHub Wiki
동적 메모리 해제
void free(void *ptr);
// ptr : 동적 메모리를 해제할 포인터
// 만약에 ptr 에 NULL 포인터이면 아무 일도 벌어지지 않는다.
// thread-safe 하다.보통은 malloc ──▶ 사용 ──▶ free 패턴으로 사용한다.
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
int *numPtr;
numPtr = malloc(sizeof(int)); // int 크기(4바이트)로 동적 메모리 만들고 첫 영역 주소를 numPtr에 저장.
printf("=> %p\n", numPtr); // numPtr에 저장된 값 출력: malloc 으로 만들어 저장한 메모리주소 출력됨
*numPtr = 10; // 역참조하여 value 할당하기
printf("=> %d\n", *numPtr); // 역참조하여 value 불러오기
free(numPtr); // numPtr에 저장된 `메모리주소`를 해제한다.
return 0;
}
// => 0x6000032b4030
// => 10