포트란에서 배열의 인덱스를 벗어난 할당/참조에 대한 작동 방식은?
글쓴이: myroot / 작성시간: 목, 2007/07/19 - 12:35오전
포트란을 사용한 과학계산 프로그램을 분석중에 있습니다.
그런데, 이 프로그램이 프로그램을 전공하지 않는 사람이 작성했는지 오류가 있는 부분이 많네요,
하지만 요구사항이 이 포트란과 똑같은 결과를 갖는 프로그램을 작성하는것이기 때문에 이 조차 따라서 구현해야 하는 입장입니다.
우선 문제를 명시해 보자면
제목에도 썼듯이, 포트란 소스에서 배열의 인덱스를 벗어난 인덱스로 할당/참조 연산을 하고 있습니다.
대충 실험한 결과 배열범위를 벗어난 인덱스의 참조 연산은 그냥 0을 리턴하는것 같고,
할당 연산의 경우 무시되는것 같습니다.
그렇지만 이게 정확히 맞는건지.. 아니면 내가 보지 못하는 변수의 값을 변경 시켜버리고 있는것은 아닌지 궁굼합니다.
포트란 언어적으로 배열의 범위를 벗어난 할당에 대해서 side effect가 없도록 설계되어 있는건가요.. 아니면 그냥 C언어처럼 다른 메모리를 덮어 써버리는건가요?
예를 들면 A(5,5) 배열에서 A(6,1)에 할당해 버리면 A(1,2)에 할당 되버리는건지.. ( 포트란에서는 2차원 배열의 메모리 배치가 C언어랑은 반대던데...)
궁굼합니다.
Forums:
댓글 달기