5줄 요약
- 힙(Heap)은 프로그램이 실행되는 동안 사용되는 동적 메모리 영역입니다.
- 프로그램이 실행되면, 힙 메모리는 운영체제로부터 할당받아 사용됩니다.
- 힙 메모리는 스택과 달리 크기가 가변적이며, 사용자가 필요에 따라 메모리를 동적으로 할당하고 해제할 수 있습니다.
- 힙 메모리는 보통 전역 변수나 정적 변수와 같이 프로그램의 실행 중에 유지되는 데이터를 저장하기 위해 사용됩니다.
- 힙 메모리는 스택과 달리 크기가 가변적이므로, 메모리 누수(memory leak)와 같은 문제가 발생할 수 있습니다.
추가 내용
- 힙 메모리는 대개 malloc(), calloc(), realloc()과 같은 라이브러리 함수를 사용하여 할당하고, free() 함수를 사용하여 해제합니다. 이러한 함수들은 운영체제로부터 힙 메모리를 할당받아 프로그램에서 사용할 수 있도록 해줍니다.
- 프로그래머는 메모리를 동적으로 할당할 때, 반드시 할당된 메모리를 해제해야 합니다. 이를 위해서는, 메모리 할당과 해제를 일관성 있게 관리하는 것이 중요합니다.
- 또한, 힙 메모리는 동적 데이터 구조를 구현하기 위해 사용됩니다. 예를 들어, 리스트, 트리, 그래프 등의 데이터 구조를 힙 메모리를 사용하여 동적으로 할당하고 관리할 수 있습니다.
경험
- 면접에서 관련해서 물어봤는데 대답하지 못했습니다.
'Programming' 카테고리의 다른 글
[5줄 요약] 데이터 드리븐(Data-driven)이란? (0) | 2023.02.13 |
---|---|
[5줄 요약] 메모리 누수(memory leak)란? (0) | 2023.02.13 |
[5줄 요약] 컴퓨팅 유닛(Compute Units)이란? (0) | 2023.02.13 |
[5줄 요약] 스택 언더플로우(Stack Underflow)란? (0) | 2023.02.12 |
[5줄 요약] 스택 오버플로우(Stack Overflow)란? (0) | 2023.02.12 |