GETARG — 명령줄 인자 얻기
GETARG — 명령줄 인자 얻기
프로그램을 실행할 때 넘긴 명령줄 인자를 코드 안에서 꺼내 쓰고 싶을 때가 있어요. GETARG는 명령줄에서 전달된 POS번째 인자를 가져오는 서브루틴입니다. Fortran 77 스타일의 하위 호환용 함수예요.
시그니처
CALL GETARG(POS, VALUE)
본문
설명(Description)
GETARG는 포함하는 프로그램이 실행될 때 명령줄에서 전달된 POS번째 인자를 가져와요. 이 내장 루틴은 GNU Fortran 77과의 하위 호환성을 위해 제공됩니다. 새 코드에서는 Fortran 2003 표준이 정의한 GET_COMMAND_ARGUMENT 내장 함수를 쓰는 걸 고려하세요.
분류(Class)
서브루틴(Subroutine)
인자(Arguments)
POS—INTEGER타입이어야 하고 기본 정수 kind보다 크면 안 돼요.POS ≥ 0VALUE—CHARACTER타입이어야 하고 기본 kind여야 해요.
반환값(Return value)
GETARG가 반환된 후 VALUE 인자는 POS번째 명령줄 인자를 담아요. VALUE가 인자를 담을 수 없으면 VALUE 길이에 맞게 잘립니다. 명령줄에 지정된 인자가 POS개보다 적으면 VALUE는 공백으로 채워져요. POS = 0이면 VALUE는 프로그램 이름으로 설정됩니다(이 기능을 지원하는 시스템에서).
예제
PROGRAM test_getarg
INTEGER :: i
CHARACTER(len=32) :: arg
DO i = 1, iargc()
CALL getarg(i, arg)
WRITE (*,*) arg
END DO
END PROGRAM
iargc()로 인자 개수를 얻고, 그 개수만큼 돌면서 getarg로 각 인자를 꺼내 출력하는 전형적인 예시예요.
표준(Standard)
GNU 확장(GNU extension)
더 알아보기
GNU Fortran 77 호환 함수: IARGC — 명령줄 인자 개수 얻기 / Fortran 2003 함수·서브루틴: GET_COMMAND — 전체 명령줄 얻기, GET_COMMAND_ARGUMENT — 명령줄 인자 얻기, COMMAND_ARGUMENT_COUNT — 명령줄 인자 개수 얻기