함수 호출 시 지역 변수, 매개 변수, 리턴 주소 등이 왜 스택에 저장될까? 1. 함수 호출의 구조적 특성과 후입선출이 잘 맞기 때문func a() { b()}func b() { c()}func c() { print("Hello")}호출 순서는 a->b->c 이지만, 복귀 순서는 c->b->a마지막에 호출된 함수가 가장 먼저 종료되는 구조 -> 스택의 후입선출과 일치 2. 지역 변수와 매개변수는 호출될 때마다 새로 생성되고, 호출이 끝나면 사라지기 때문3. 리턴 주소를 저장해서 함수가 끝난 뒤 어디로 돌아갈지를 알려주기 위해func multiply(x: Int, y: Int) -> Int { let result = x * y return result}func main() { ..