GETENV — 환경 변수 가져오기
GETENV — 환경 변수 가져오기
환경 변수의 값을 읽어야 할 때가 있어요. 홈 디렉터리 경로나 실행 환경에 따라 달라지는 설정을 프로그램 안에서 꺼내 쓰려면 이런 기능이 꼭 필요하죠. GETENV는 환경 변수 NAME의 값을 VALUE에 담아주는 내장 서브루틴이에요.
본문
CALL GETENV(NAME, VALUE)
설명(Description)
환경 변수 NAME의 값을 가져와요.
이 내장 루틴은 GNU Fortran 77과의 하위 호환성을 위해 제공되는 것이에요. 새로 코드를 짠다면 Fortran 2003 표준에 정의된 GET_ENVIRONMENT_VARIABLE을 쓰는 걸 권장해요.
GETENV는 스레드 안전(thread-safe)을 보장하지 않아요. 환경이 GETENV 호출과 동시에 갱신되지 않도록 하는 건 사용자의 책임이에요.
분류(Class)
서브루틴
인자(Arguments)
NAME— 타입이CHARACTER이고 기본 kind여야 해요.VALUE— 타입이CHARACTER이고 기본 kind여야 해요.
반환값(Return value)
NAME의 값을 VALUE에 저장해요. VALUE가 데이터를 담기에 충분히 크지 않으면 잘라서(truncate) 저장돼요. NAME이 설정되어 있지 않으면 VALUE는 공백(blank)으로 채워져요.
예제
PROGRAM test_getenv
CHARACTER(len=255) :: homedir
CALL getenv("HOME", homedir)
WRITE (*,*) TRIM(homedir)
END PROGRAM
HOME 환경 변수의 값을 homedir에 담아 출력해요. 이 예제 하나로 '환경 변수 → 문자열 변수 → 출력' 흐름이 그대로 보이죠.
표준(Standard)
GNU 확장(GNU extension)이에요.