그림 1-1로 살펴볼까요?
▲ 그림 1-1 스택 프레임
코드와 그림을 비교해 보면 # 3에서 매개변수로 전달된 a와 b는 # 1과 # 2에 있는 a와 b가 아님을 알 수 있습니다. # 3에서 함수가 호출된 순간 매개변수를 비롯한 지역 변수를 저장할 공간을 따로 만들고, 전달된 10과 20이라는 a와 b 값만 복사하여 전달하게 됩니다. 최종적으로 a와 b의 연산이 끝나고 c에 값이 잘 저장된 후에는 return을 만나면 함수가 종료되는데, 이때 만들어졌던 add_two 함수의 스택 프레임 역시 사라집니다. 스택 프레임의 생성 시기는 함수를 호출했을 때고, 소멸 시기는 함수 실행이 종료되었을 때입니다.