|
음냐리....
buffer, buffer1 변수를 local로 선언할 경우 그 배열은 당연히 stack에서 관리되겠지요.
Project - Options - Linker에 보면 Max stack size라고 나와 있습니다.
Max stacik size에서 명시한 값보다 큰 크기의 배열을 local variable로 잡을 수는 없습니다.
해결방법은 Option에서 Max stack size를 크게 잡으면 되지만 그리 권장하는 방법은 아닙니다.
차라리 buffer, buffer1은 전역변수나 static변수로 선언해서 사용하시는 것이 좋을 겁니다.
실제로 RTOS에서는 쓰레드마다 사용되어 지는 stack의 크기가 크기 않기 때문에
웬만한 크기의 변수들은 static으로 잡는 것이 일반적입니다.
남호성 님이 쓰신 글 :
: 안녕하세요...
:
: 씨빌더에서 잡을 수 있는 배열의 최대 크기는 얼만지 궁금해서 문의드립니다...
:
: 제가 지금 프로그램을 짜는데 자꾸 out of range라는 에러가 나서요...
: (wchar_t buffer[500000], buffer1[500000])
:
: 도대체 어느정도까지 허용이 되있는지 궁금합니다...
:
: 만일 위의 코드가 허용이 안된다면, 해결책은 뭐가 있는지...
:
: 신세만 지는군요...
:
: 그럼 수고하십시요...
:
:
|