14강 · 제9장 · 약 55분
메모리 동적 할당
malloc/free 등 동적 할당과 기억공간 관리 함수를 익힙니다.
학습 목표
- 동적 할당이 필요한 상황을 안다
- malloc/free를 짝으로 사용한다
정적 vs 동적
- 정적/자동: 컴파일·블록 시점에 크기가 정해짐
- 동적: 실행 중에 크기를 요청 (
malloc,calloc,realloc) → 끝나면free
int *p = (int *)malloc(sizeof(int) * n);
if (p == NULL) { /* 실패 */ }
/* 사용 */
free(p);
p = NULL;
calloc: 0으로 초기화하며 할당realloc: 크기 변경memcpy/memset/memcmp: 바이트 단위 기억공간 관리
누수(memory leak): 할당 후 free를 잊는 것. 항상 짝을 맞추세요.
코드 실습 (C)
실행 결과가 여기에 표시됩니다.