컴퓨터/프로그래밍

C언어 환경변수 추가 수정 함수 putenv()

2020. 3. 14. 10:51

C함수 환경변수 추가 수정 함수 putenv()

환경 변수 목록 중에 변수값을 수정하거나 추가합니다. 수정된 변수값이나 새로 추가된 환경 변수값은 실행 중인 프로그램에서만 유효하며 외부적으로는 변경되지 않습니다. 즉, 프로그램의 실행 단위인 애플리케이션 내에서만 유효합니다.

  • 헤더: stdlib.h
  • 형태: int putenv(char *string)
  • 인수: char *string 변경 또는 추가하려는 변수 이름과 변수 값
  • 반환: int 성공하면 0, 실패하면 -1

C언어 putenv() 함수 예제

#include <stdio .h>
#include <stdlib .h>

extern char **environ;  // 외부 참조 변수로 선언

int main()
{
   putenv( "QTDIR=/jwmx/badayak/com");
   putenv( "NEWVALLUE=badayak.com");
   
   while( *environ)
      printf( "%s\n", *environ++);
      
   return 0;
}

C언어 putenv() 예제 실행 결과

]$ ./a.out
HOSTNAME=jwCentOS
TERM=linux
       :
QTDIR=/jwmx/badayak/com
       :
NEWVALLUE=badayak.com
]$ printenv                  <- 프로그램 종료 후의 환경 값을 확인
HOSTNAME=jwCentOS
TERM=linux
       :
QTDIR=/usr/lib/qt-3.3        <- 실행 전의 값
       :
NEWVALLUE=badayak.com        <- 실행 후에는 사라짐
]$