메모리 영역 - 메모리 , 스택 ( stack ) , 코드 영역
메모리 영역에 대해서 간단하게 알아보자!
먼저 영역은 크게 세가지가 있다. 메모리 영역, 스택영역, 코드영역
이 영역들을 그림으로 표현하면 아래와 같다.
---------------- 메모리 ------------------
----------------- stack -----------------
----------------- 코드 -----------------
아래의 코드를 실행할 경우 코드들이 어떻게 돌아가고 메모리 영역에 어떤식으로 저장되고 삭제되는지에 대해서 알아보려고 한다

먼저 result = 100 은 result 변수에 100이라는 데이터를 저장한 것이기 때문에 메모리 영역에 저장이 된다.
---------------- 메모리 ------------------
result : 100
----------------- stack -----------------
----------------- 코드 -----------------
그리고
def n_plus_1 (n) :
result = n + 1
부분은 함수의 정의이기 때문에 코드영역에 저장이 된다.
---------------- 메모리 ------------------
result : 100
----------------- stack -----------------
----------------- 코드 -----------------
def n_plus_1 (n) :
result = n + 1
stack영역에는 함수의 변수 n_plus_1( ) 영역이 생기게 된다.
n_plus_1(3) 을 실행한 값인 결과 4는 stack부분에 저장이 된다.
---------------- 메모리 ------------------
result : 100
----------------- stack-----------------
------- n_plus_1 ( ) --------
result : 4
----------------- 코드 -----------------
def n_plus_1 (n) :
result = n + 1
함수부분 실행 끝나면 stack 영역에 저장된 함수 부분은 사라지게 된다.
---------------- 메모리 ------------------
result : 100
----------------- stack -----------------
----------------- 코드 -----------------
def n_plus_1 (n) :
result = n + 1
그림으로 표현하면 위와같은 형태이다.
마지막으로 print(result)를 했기 때문에 메모리 영역에 저장된 데이터 100이 출력된다.