[c언어] 힙의 활용

이번 글에서는 C언어에서 힙(Heap)을 활용하는 방법에 대해 알아보겠습니다.

목차

  1. 힙이란?
  2. 메모리 동적 할당
  3. 힙 메모리 활용 예제
  4. 결론

1. 힙이란?

힙(Heap)은 프로그램 실행 중 동적으로 메모리를 할당하고 해제할 수 있는 메모리 영역입니다. 힙은 프로그램이 실행될 때 운영체제로부터 할당받은 전용 공간으로, 스택과 달리 메모리 크기가 동적으로 변할 수 있습니다.

2. 메모리 동적 할당

C언어에서는 malloc() 함수를 사용하여 힙 메모리를 동적으로 할당할 수 있습니다. 이 함수는 할당할 메모리의 크기를 인자로 받고, 할당된 메모리의 시작 주소를 반환합니다. 예를 들어, 다음과 같은 코드로 100바이트의 힙 메모리를 할당할 수 있습니다.

int *ptr = (int*)malloc(100);

3. 힙 메모리 활용 예제

다음은 힙 메모리를 활용하는 간단한 예제 코드입니다. 이 코드는 사용자로부터 정수를 입력받아 동적으로 할당한 힙 메모리에 저장하고 출력하는 기능을 수행합니다.

#include <stdio.h>
#include <stdlib.h>

int main() {
    int *ptr = (int*)malloc(sizeof(int));

    printf("정수를 입력하세요: ");
    scanf("%d", ptr);

    printf("입력된 정수: %d\n", *ptr);

    free(ptr); // 메모리 해제
    return 0;
}

4. 결론

이번 글에서는 C언어에서 힙의 활용에 대해 간략하게 알아보았습니다. 힙은 메모리를 동적으로 할당하여 프로그램의 유연성을 높이는데 중요한 역할을 합니다. 메모리 누수를 방지하고, 효율적인 자원 활용을 위해 힙을 올바르게 활용하는 것이 중요합니다.

참고 자료