안녕하세요 영원한 델초보 어린왕자임다.. 동적배열에 관한 질문인데요. var ar:array of integer; begin SetLength(ar,1); ar[0]=3; SetLength(ar,2); showmessage(IntToStr(ar[0])); end; ar[0]은 어떻게 출력됩니까? 그러니깐 중복해서...
구창민
•
2000.10.17 00:56
어린왕자 wrote:
> 안녕하세요 영원한 델초보 어린왕자임다..
> 동적배열에 관한 질문인데요.
>
> var...
> 안녕하세요 영원한 델초보 어린왕자임다..
> 동적배열에 관한 질문인데요.
>
> var
> ar:array of integer;
> begin
> SetLength(ar,1);
> ar[0]=3;
> SetLength(ar,2);
> showmessage(IntToStr(ar[0]));
> end;
>
> ar[0]은 어떻게 출력됩니까?
> 그러니깐 중복해서 배열크기를 정해주면 어떻게 됩니까?
> 에러가 납니까?
> 고수님 답변 기다리겠슴다.
중복해서 선언한다고 해서 에러는 발생하지 않겠네요.
그리고, ar[0]의 값도 변하진 않겠지만,
중복선언시 더 작은 값의 배열을 선언하면 ar[0]의
값이 유지된다고는 보장할 수 없습니다.
그러니까 처음에 10개의 배열을 선언하고, 두번째 선언시 5개의 배열을
선언한다면 5개의 배열뒤, 즉 ar[5]의 값은 엉뚱한 쓰레기 값이
들어있게 될거 같네요.
그럼, 즐거운 프로그래밍 하시길~