스택오버플로우 나는데 왜일까요?????
미투리
#include stdio.h
long max(long, long);
long MaxSubseqSum(int A[], unsigned Left, unsigned Right);
int main(void)
{
long num, i, s_max, seq[100000];
FILE *in, *out;
in = fopen(input.txt,r);
out = fopen(output.txt, w);
fscanf(in, %d, &num);
for(i=0; inum; i++)
fscanf(in, %d, &seq[i]);
s_max = MaxSubseqSum(seq, 0, num-1);
fprintf(out, %d\n, s_max);
fclose(in);
fclose(out);
return 0;
}
long MaxSubseqSum(int A[], unsigned Left, unsigned Right)
{
int Center, i;
long MaxSum, MaxLeft, MaxRight, MaxCenter;
long MaxCenterL, MaxCenterR, ThisSum;
if (Left == Right) {
if (A[Left] 0) return A[Left];
else return 0;
}
Center = (Left + Right) / 2;
MaxLeft = MaxSubseqSum(A,Left,Center);
MaxRight = MaxSubseqSum(A,Center+1,Right);
MaxCenterL = 0;
ThisSum = 0;
for (i=Center; i=Left; i--) {
ThisSum = ThisSum + A[i]; //이부분에서나는데 왜 일까요
MaxCenterL = max(MaxCenterL,ThisSum);
}
MaxCenterR = 0;
ThisSum = 0;
for (i=Center+1; i=Right; i++) {
ThisSum = ThisSum + A[i];
MaxCenterR = max(MaxCenterR,ThisSum);
}
MaxCenter = MaxCenterL + MaxCenterR;
MaxSum = max(max(MaxLeft,MaxRight),MaxCenter);
return MaxSum;
}
long max(long A, long B)
{
if(A=B)
return A;
else
return B;
}
-
Creator
예 감사합니다.
-
매미꽃
여기서 보니까, 스택오버플로우는 재귀함수에서 나는 거네요. 스택은 일반 로컬 변수를 저장하는 공간이죠.(new나 malloc으로 할당되는 거 제외) 일반적으로는 스택이 오버플로가 나는 경우가 없는데 재귀함수를 쓸 경우는 함수가 다시 호출되는 만큼 스택이 늘어납니다.
재귀함수가 무한 반복되지 않도록 조건을 줘야 되는데, 그런처리가 안되어 있으면 재귀함수는 무한반복할 수 밖에 없고, 스택이 한계에 차서 오버플로 에러가 나게 되는 겁니다.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2701151 | 사이트작업시 inputbox 가 readonly 형태표시 어떻게 하시나요? (1) | 찬내 | 2025-07-11 |
2701123 | 간단한 select 질문입니다 (3) | 천사의눈물 | 2025-07-11 |
2701061 | 비베질문.. | 똘끼 | 2025-07-10 |
2701034 | 메일폼 내 script 삽입가능한 방법 없을까요.. (2) | 마음새 | 2025-07-10 |
2701008 | 분명히 버튼을 만들었는데 액션이 안걸립니다. (3) | 재찬 | 2025-07-10 |
2700923 | 전체중앙정렬&독타입&쿼크모드 ㅜㅠ (8) | 푸른들 | 2025-07-09 |
2700893 | 질문드리겠습니다. | 도도한 | 2025-07-09 |
2700793 | 무비클립에 마우스 오버시 랜덤으로 효과음 나기는 어떻게 ;; (1) | 바닐라 | 2025-07-08 |
2700741 | 웹전송? (2) | 연와인 | 2025-07-07 |
2700686 | 카테고리 호버시 세부카테고리 보이게하는 것, css로만 가능할까요?? (3) | 다힘 | 2025-07-07 |
2700658 | 메타태그 질문드립니다..ㅠㅠ;;; | 모해 | 2025-07-07 |
2700632 | 외부에서 이미지 파일을 불러와야 합니다. 도와주세요. (4) | 에일린 | 2025-07-06 |
2700579 | (air + as3) smtp 이용해서 첨부파일 포함해서 메일 보내기 | 물보라 | 2025-07-06 |
2700524 | 클릭시 밑에 메뉴 나오게 (4) | 새솔 | 2025-07-05 |
2700505 | activex를 비쥬얼6.0으로 만들었는데요 비스타 배포시에 안되서 질문드립니다 (3) | 참이 | 2025-07-05 |
2700452 | c언어에서... 자료형 구분.... (3) | 시내 | 2025-07-05 |
2700422 | 버전에 관해 질문 | 라온제나 | 2025-07-04 |
2700393 | mysql이 갑자기!!!!!!!!!!!!!!!에러가;; (2) | 소미 | 2025-07-04 |
2700359 | 3.0 ) SimpleButton 상태 강제 변경 (3) | 희선 | 2025-07-04 |
2700304 | ie8 전용핵 문의 (3) | 여자 | 2025-07-03 |