Saturday, January 06, 2007
C언어 VC++] 컴퓨터 환경변수 구하기/출력 방법; Get-Print Environment Variable
컴퓨터에 저장되어 있는 "환경변수(Environment Variable)"를 구하는 방법입니다. 다음 예제에서, 첫번째 부분은 PATH 라는 환경변수의 값을 구하는 것이고, 두번째 부분은, 모든 환경변수의 목록을 출력하는 것입니다.
파일명: 0.cpp
main 메인 함수의 3번째 파라미터인 envp 이것은, 시스템의 환경변수가 자동으로 저장되는 배열입니다. (envp 가 아닌 arge 등의 다른 이름이라도 상관 없습니다.) 그런데 이 세번째 파라미터는 ANSI C 표준은 아닙니다.
모든 환경변수의 리스트를 얻기 위한 목적이 아니라면, char* envp[] 라는 파라미터는 붙일 필요없습니다.
컴파일러의 워닝 레벨을 높였다면
0.cpp(5) : warning C4100: 'argv' : unreferenced formal parameter
0.cpp(5) : warning C4100: 'argc' : unreferenced formal parameter
"사용하지 않는 파라미터가 있다"는 경고가 나올 것인데, 무시해도 됩니다.
참고: ▶▶ C언어] argc, argv 파라미터(인수; 매개변수) 사용 예제; main Function Parameter
C에서, "시스템 환경 변수" 얻기 예제 소스
파일명: 0.cpp
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char* argv[], char* envp[]) {
char *s;
// 지정한 특정 환경변수만 출력
s = getenv("PATH");
if (s != NULL)
printf("%s\n", s);
else
fputs("그런 환경 변수가 없습니다\n", stderr);
// 모든 환경변수 출력 (envp 이용하여)
for (int i = 0; envp[i] != NULL; i++)
printf("%s\n", envp[i]);
return 0;
}
#include <stdlib.h>
int main(int argc, char* argv[], char* envp[]) {
char *s;
// 지정한 특정 환경변수만 출력
s = getenv("PATH");
if (s != NULL)
printf("%s\n", s);
else
fputs("그런 환경 변수가 없습니다\n", stderr);
// 모든 환경변수 출력 (envp 이용하여)
for (int i = 0; envp[i] != NULL; i++)
printf("%s\n", envp[i]);
return 0;
}
main 메인 함수의 3번째 파라미터인 envp 이것은, 시스템의 환경변수가 자동으로 저장되는 배열입니다. (envp 가 아닌 arge 등의 다른 이름이라도 상관 없습니다.) 그런데 이 세번째 파라미터는 ANSI C 표준은 아닙니다.
모든 환경변수의 리스트를 얻기 위한 목적이 아니라면, char* envp[] 라는 파라미터는 붙일 필요없습니다.
컴파일러의 워닝 레벨을 높였다면
0.cpp(5) : warning C4100: 'argv' : unreferenced formal parameter
0.cpp(5) : warning C4100: 'argc' : unreferenced formal parameter
"사용하지 않는 파라미터가 있다"는 경고가 나올 것인데, 무시해도 됩니다.
참고: ▶▶ C언어] argc, argv 파라미터(인수; 매개변수) 사용 예제; main Function Parameter
tag: cpp
C언어 | C/C++ (Visual C++)
<< Home