작성한 질문수
홍정모의 따라하며 배우는 C언어
작성
·
873
0
static 변수는 프로그램 종료시에 할당해제 되므로 따라 free를 안해줘도 상관없지만 malloc 과 같이 메모리를 할당하여 사용하면 메모리 누수 방지를 위해 free를 해줘야 하는걸로 알고 있습니다. 여기서 궁금한 점이 static 변수를 동적할당하면 그건 free 를 해줘야 하나요??
답변 1
1
static int * a = malloc(...);
이라면 a 자체는 static 이지만 a가 가리키는 메모리 공간은 힙이라서 당연히 free를 해줘야 합니다.
문제 풀던 중 이 부분에서 헷갈렸는데 완벽히 이해됐습니다 감사합니다
문제 풀던 중 이 부분에서 헷갈렸는데 완벽히 이해됐습니다 감사합니다