[c언어] 동적 메모리 할당을 위한 realloc 함수 설명
동적으로 할당된 메모리를 다시 조정하기 위해 realloc
함수를 사용할 수 있습니다. realloc
함수는 메모리 블록의 크기를 새로운 크기로 조정하고자 할 때 사용됩니다. 이를 통해 기존 메모리 블록의 크기를 증가시키거나 감소시킬 수 있습니다.
realloc 함수 구문
void* realloc(void* ptr, size_t size);
realloc
함수는 포인터 ptr
이 가리키는 메모리 블록의 크기를 size
로 변경합니다. 이때, 기존 포인터의 값을 반환하지 않을 수도 있고, 새로운 메모리 주소를 반환할 수도 있습니다.
realloc 함수의 사용 예시
#include <stdio.h>
#include <stdlib.h>
int main() {
int *ptr;
// 메모리 할당
ptr = (int*)malloc(5 * sizeof(int));
if (ptr == NULL) {
printf("메모리 할당 오류");
return 1;
}
// 메모리 재할당
ptr = (int*)realloc(ptr, 10 * sizeof(int));
// 추가적인 작업 수행
// 메모리 해제
free(ptr);
return 0;
}
realloc
함수는 포인터 ptr
이 가리키는 메모리 블록의 크기를 증가시킬 수 있습니다. 그러나 realloc
함수가 메모리 블록을 증가시키지 못할 경우, 새로운 메모리 블록을 할당하고 기존 데이터를 새로운 블록으로 복사합니다.
realloc
함수는 메모리의 크기를 조절하는 데 유용한 함수이며, 메모리를 효율적으로 활용하기 위해 프로그래머들에게 도움을 줄 수 있습니다.
자세한 정보는 realloc 함수에서 확인할 수 있습니다.