다음과 같이 문자 배열을 만들었습니다:
char arr[3] = "bo";
'배열'이라는 이름의 배열과 관련된 메모리를 해제하려면 어떻게 해야 하나요?
로컬 변수는 함수가 종료될 때 자동으로 해제되므로 사용자가 직접 해제할 필요가 없습니다. 힙에 할당된 동적으로 할당된 메모리(예: malloc
사용)만 해제하면 됩니다:
char *arr = malloc(3 * sizeof(char));
strcpy(arr, "bo");
// ...
free(arr);
동적 메모리 할당에 대한 자세한 내용: http://en.wikipedia.org/wiki/C_dynamic_memory_allocation
char arr[3] = "bo";
Arr 메모리를 스택으로 세그먼트입니다. 는 것이 자동으로 무료로 제공하는 경우가 범위를 벗어납니다.