[c언어] C 언어에서 동적 메모리 할당이란?

동적 메모리 할당은 주로 malloc() 함수를 사용하여 수행됩니다. 예를 들어, 다음과 같은 코드를 사용하여 정수형 배열을 동적으로 할당할 수 있습니다.

#include <stdlib.h>

int main() {
    int *ptr;
    ptr = (int*)malloc(5 * sizeof(int));
    if (ptr == NULL) {
        // 메모리 할당 실패 처리
    } else {
        // 메모리 할당 성공 처리
    }
    free(ptr);  // 메모리 해제
    return 0;
}

이 코드에서 malloc() 함수는 5개의 정수를 저장할 수 있는 메모리 블록을 동적으로 할당합니다. 할당된 메모리는 더 이상 필요하지 않을 때 free() 함수를 사용하여 해제할 수 있습니다.

동적 메모리 할당은 효율적인 메모리 사용을 가능하게 하며, 프로그램이 더 유연하고 동적인 데이터 구조를 다룰 수 있게 해줍니다.

참고 문헌: