본문 바로가기

기타

메모리 영역

        낮은 주소        →        높은 주소

코드 - 데이터 - BSS - 힙 - 스택

 

  코드 데이터 BSS 스택
가지고 있는 값 함수, 제어문, 상수

초기화된 global, static 변수, 배열

초기화되지 않은 global, static 변수, 배열 사용자가 동적 할당한 변수 지역 변수, 매개 변수
크기 결정 시점 컴파일 타임 런타임
소멸 결정 시점 프로그램 종료 시 명시적으로 할당 해제하는 경우에만 블록을 빠져나갈 때
저장 방향 낮은 주소에서 높은 주소 방향 높은 주소에서 낮은 주소 방향

 

 

  스택
장점 큰 메모리 풀이므로 큰 배열/구조체/ 클래스 할당 가능, 사용자가 관리할 수 있음 메모리 할당이 비교적 빠름, 비교적 크기가 작음
단점

메모리 할당이 비교적 느림, 메모리 릭 발생 가능 , 포인터를 통해 접근하게 되어 변수에 직접 접근하는 것에 비해 느림

 스택에 할당된 메모리는 스택 범위에 있을 때만 접근 가능

 

 

참고한 블로그

https://boycoding.tistory.com/235

'기타' 카테고리의 다른 글

디자인 패턴을 사용하는 이유  (0) 2020.02.17