getenv 예제

다음 예제에서는 getenv() 함수의 사용을 보여 주며 있습니다. `getenv()`는 `NAME 환경 변수`를 취하고 목록에서 검색하고 발견되면 해당 값을 문자열로 반환합니다. 실패하면 NULL 포인터를 반환합니다. #include char *getenv (const char *name); getenv()의 반환 값은 getenv(), [CX] setenv(또는 unsetenv)에 대한 후속 호출에 의해 덮어쓸 수 있는 정적 데이터를 가리킬 수 있습니다. 답변: `환경`은 O.S.에서 유지 관리하는 이름/VALUE 쌍의 구현 정의 목록입니다. 표준은 “환경 변수”에 대한 특정 의미를 정의합니다. 모든 구현에서 반드시 동일한 환경 변수 집합을 정의할 필요는 없지만 환경 변수가 있는 환경 변수에 대해 동일한 의미를 정의해야 합니다. `getenv()` 함수는 `stdlib.h` 헤더로 선언되고 getenv() 함수 아래에서 프로토타입화되어 정적 데이터를 가리키는 값을 반환하기 때문에 본질적으로 재진입하지 않습니다. @Mark L. : thx, 나는 getenv() getenv() 환경 변수가 많은 응용 프로그램에 중요 할 수 있습니다 abort()에서 오타를 변경했습니다.

일반적으로 이와 같은 응용 프로그램은 환경을 사용자 구성 가능한 매개 변수의 리소스 데이터베이스로 사용합니다. 이러한 변수가 사용자의 셸 환경에 있다는 사실은 일반적으로 환경 변수(예: COLUMNS를 사용하려고 시도하는 ls) 또는 실제로 거의 모든 유틸리티(LANG , LC_ALL 등)를 사용하는 다른 프로그램이 lin에 의해 유사하게 느려짐을 의미합니다. 변수를 통해 귀 검색. 실제로 getenv(더 높은 성능을 위해) 구현은 훨씬 더 빠르게 검색할 수 있는 데이터 구조에서 환경의 별도 복사본(예: 인덱싱된 해시 테이블 또는 이진 트리)을 유지하고 환경과 선형 목록을 모두 업데이트할 수 있습니다. setenv() 또는 unsetenv()가 호출될 때 환경이 호출됩니다. getenv() 함수는 호출 프로세스의 환경을 검색해야 합니다(IEEE Std 1003.1-2001, Chapter 8, 환경 변수의 기본 정의 볼륨 참조) 환경 변수 이름이 있는 경우 환경 변수에 대한 포인터를 환경 값으로 반환합니다. 변수. 지정된 환경 변수를 찾을 수 없는 경우 null 포인터가 반환됩니다. 응용 프로그램은 getenv() 함수가 가리키는 문자열을 수정하지 않도록 해야 합니다.

이것은 복사/붙여넣기 문제입니다. “getenv():의 소스 코드 예제”라고 말해야 합니다. 여기 PATH는 getenv ()에 대한 찾을 수 없습니다. 따라서 NULL을 반환합니다. 성공적으로 완료되면 getenv()는 지정된 이름에 대한 값을 포함하는 문자열에 포인터를 반환합니다. 호출 프로세스 환경에서 지정된 이름을 찾을 수 없는 경우 null 포인터가 반환됩니다. 다음은 getenv() 함수에 대한 선언입니다. 이 함수는 목록에서 NAME 환경 변수를 검색하고 해당 값을 반환합니다. 여기서 는 프로그램이 NAME 변수의 값을 수정해서는 안 됩니다.

C 프로그램을 작성하고 여러 환경 변수에 액세스하려고 시도하자, 예를 들어, getenv — 가리키는 문자열은 getenv (), [CX] setenv() 또는 unsetenv()에 대한 후속 호출에 의해 덮어쓸 수 있지만 IEEE Std 1003.1-2001의 이 볼륨에 있는 다른 함수에 대한 호출로 덮어씁싸습니다. 코드 예제의 제목은 “abort():”응용 프로그램 사용 섹션의 규범 텍스트의 소스 코드 예는 반환 값 섹션으로 이동됩니다.

Ο ΚΑΙΡΟΣ
facebook
facebook
ΑΡΙΘΜΟΣ ΕΠΕΣΚΕΠΤΩΝ
  • 0Total visitors:
  • Visitors today:
  • Visitors yesterday:
  • Visitors last week:
  • Visitors per month:
  • 0.00Visitors per day:
  • 0Visitors currently online: