부스트코스(Boostcourse) CS50 5주차 심화 과정 💎 생각해보기(2)
2021. 2. 19. 21:39
스터디&교육/부스트코스 CS50 2기
첫 번째로는 이중 포인터에 대한 내용이었고 이번에는 메모리와 오버플로우에 대한 내용에 대해서 알아보았다. 메모리에는 스택, 힙, 데이터, 텍스트 영역 등 다양한 영역으로 나눌 수 있다. 메모리 stack 영역은 지역 변수와 매개 변수가 저장되는 영역이다. 함수가 시작되면 해당 함수의 지역 변수가 스택에 쌓였다가 함수가 종료되면 자동으로 해제된다. [ 스택 오버플로우가 발생하는 경우 ] 스택 오버플로우가 발생하는 경우에 대해서 대표적으로 재귀 함수에 대해서 알아보았다. 재귀함수라고 자기 자신의 함수를 호출해 가독성을 높여주는 함수다. 하지만 재귀함수를 잘못 사용하게 되면 stack overflow 를 발생시키게 된다. 함수를 호출할 때 함수의 파라미터와 리턴 값, 복귀 주소(RET) 등 stack 에 저장..