모두CBT

재귀 함수의 종료 조건을 잘못 프로그래밍하여 재귀함수의 호출이 무한히 … | [정보보안기사 필기] 16년 1회차 기출문제 상세 페이지

1[정보보안기사 필기] 16년 1회차
재귀 함수의 종료 조건을 잘못 프로그래밍하여 재귀함수의 호출이 무한히 반복될 경우, 메모리의 어떤 영역에서 문제가 발생하는가?
1
Text
2
Data
3
Heap
4
Stack
해설

재귀 호출이 종료되지 않고 반복되면 함수 호출 정보가 쌓이는 Stack 영역에서 문제가 발생한다.

함수가 호출될 때마다 지역변수와 복귀 주소를 담은 스택 프레임이 쌓이는데, 재귀가 끝나지 않으면 이 프레임이 계속 누적되어 스택 오버플로우로 이어진다.

  • Text 영역은 실행 코드가 저장되는 정적 영역이라 이 문제와 무관하다.
  • Data 영역은 전역·정적 변수가 저장되는 정적 영역이라 이 문제와 무관하다.
  • Heap은 동적 할당 영역으로 재귀 호출과는 별개로 관리된다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.