더북(TheBook)

마지막으로 func() 함수가 종료되면서 그림 10-14처럼 스택 영역에 있던 nb의 메모리가 반환됩니다.

그림 10-14 | 함수 종료 되고 스택 영역에 있던 지역 변수 n과 b 메모리 반환

 

이어서 main() 함수 종료와 함께 전체 코드가 종료되면서, 그림 10-15처럼 데이터 영역에 있던 x가 메모리를 반환하고 스택 영역에 있던 a가 메모리를 반환합니다.

그림 10-15 | 전체 코드 종료되고 데이터 영역의 x와 스택 영역의 a 메모리 반환

 

지금까지 우리가 작성한 C 언어 코드는 코드 영역에 저장되고, 전역 변수는 데이터 영역에, 지역 변수는 스택 영역에 저장되며, 동적 메모리 할당을 통해 생성된 메모리는 힙 영역에 저장되는 과정을 살펴봤습니다. 이렇게 네 가지 영역에 메모리를 생성하기도 하고 삭제하기도 하면서 C 언어 코드가 수행되는 것입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.