본문 바로가기

[열혈강의 C]힙영역.

반응형

프로그램 실행할 때에 결정이 되어야 하는 메모리 공간은 stack에 설정할 수 없다.

힙영역에 저장한다. 우리가 명시적으로 적어줘야 한다. 그것이 malloc함수

   

void* malloc(size_t size)

인자만큼의 메모리를 할당하되 단지 얼마를 리턴하라는 메모리의 양만 말했으므로 어떤 데이터형으로 반환을 해줘야 할지 컴퓨터는 모른다. 그래서 void형으로 반환해주고 그 다음은 프로그래머에게 맡긴다.

   

동적으로 할당된 메모리공간을 해제할 때는 해제를 해줘야한다. 그것이 free함수이다.

해제해주지 않으면 메모리의 누수가 생겨 모자랄 수도 있다.

   

   

   

free함수를 사용하지 않아도 프로그램이 끝나면 자동으로 메모리를 봔환한다.그래도 free로 선언해주는 것이 좋다.

   

반응형
-->