FreePascal Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
FreePacal 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

FreePascal Q&A
[142] Re:Re:array size 관련해서 발생하는 SIGSEGV 오류 해결방법을 찾습니다
새롬 [saerom] 3212 읽음    2013-11-10 23:27
친절한 답변 감사드립니다.

지역변수로 선언했습니다.
아마도 스택 오버플로우 일 것 같습니다.....

동적할당/회수 관련 자료는 어디서 찾을 수 있을까요?
참고할 만한 샘플 코드가 있는 곳이면 더욱 좋구요.....


MarunGuy 님이 쓰신 글 :
: AB 변수를 지역변수로 선언한 건가요?
: 지역변수이면 스택 오버플로우이지 않을까 합니다.
:
: 6*8,145,060 = 48,870,360 = 약48MB
: 윈도에서는 스택 기본크기가 1M 정도입니다.
: 1MB <<< 48MB
:
: AB 변수를 동적으로 할당해보세요.
:
: 새롬 님이 쓰신 글 :
: : 안녕들하세요?
: :
: : free pascal에서 array size를 크게 잡으면  exception 'External: SIGSEGV' 오류가 발생합니다.
: :
: : type
: : A1 = array[1..6] of byte;
: : B1 = array[1..8145060] of A1;  <= 이 부분의 size를 작게하면 정상 수행함.
: :
: : var
: : AB : B1;
: :
: : 위의 원코드에서 B1 size를 반정도로 줄이면 프로그램이 정상 동작하는데
: : 크게하면 다음과 같은 오류가 발생합니다.
: :
: :      - exception 'External: SIGSEGV'
: :      - line 236: begin  <= 해당 프로시저의 begin문 입니다.
: :
: : 참고로  스펙은 다음과 같습니다.
: :
: :     - Windows 7  Home Premium K  (32 bit OS)
: :     - i7
: :     - RAM: 4G
: :
: : 해결 방법이 없을까요?
: :
: :

+ -

관련 글 리스트
140 array size 관련해서 발생하는 SIGSEGV 오류 해결방법을 찾습니다 새롬 3174 2013/11/10
141     Re:array size 관련해서 발생하는 SIGSEGV 오류 해결방법을 찾습니다 MarunGuy 5716 2013/11/10
142         Re:Re:array size 관련해서 발생하는 SIGSEGV 오류 해결방법을 찾습니다 새롬 3212 2013/11/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.