컴퓨터 공학/C, C++
[ C ] 메모리 이해하기6 _동적메모리란? / 동적 할당 개념 그림으로 이해하기
hahehohoo
2020. 7. 15. 03:00
반응형
동적메모리란? / 동적 할당 개념 그림으로 이해하기
프로그램이 동적 메모리를 가져다 사용할 때는 총 세 가지 단계를 거칩니다.
메모리 할당
메모리 사용
메모리 해제
매니지드 언어(대표적으로 C언어)는 위 3단계를 프로그래머가 직접 다 해야합니다.
1 . 메모리 할당
힙 관리자에게 메모리를 xxx 바이트만큼 달라고 요청합니다.
관리자는 그만큼의 연속된 메모리를 찾아서 반환합니다.
반환된 메모리는 어떤 자료형에 저장 가능할까요?
메모리 주소니 당연히 포인터입니다.
2. 메모리 사용
포인터 사용이랑 같습니다. 그래서 메모리를 원하는 대로 사용할 수 있습니다.
예) int 배열에 성적을 저장한 뒤 평균을 구해서 float 변수에 저장할 수 있습니다.
3. 메모리 반납/해제
힙 관리자에게 그 메모리 주소를 돌려주면서 다 썼다고 알려줘야합니다.
그럼 그 관리자는 그 메모리 주소를 아무도 사용하지 않는 상태로 바꿉니다.
반응형