environ, getenv, putenv - 環境変数の取得・設定
【書式】
#include <stdlib.h>
char **environ;
char *getenv(const char *name);
int putenv(const char *env);
【解説】
グローバル変数 environ は環境変数のリストの先頭を保持しています。
main()の3番目のパラメタとしてenvpがあり、これはenvironがそのまま渡さ
れます。 しかし、putenv()はenvironを変更することがありますので、envp
を使用するよりもenvironを参照する方が望ましいでしょう。
getenv()は現在の環境のリストを探索してnameという名前の環境変数の値を
返します。環境変数はDOS窓のSETコマンドで設定されたものか、 putenv()
によって設定されたものです。
putenv()はenvで指定される環境変数を登録します。envが指す文字列は
NAME=value
の形をしていなければなりません。 ただし、valueは省略することができま
す。
putenv()によって登録された環境変数はspawn(3)やexec(3) によって生成さ
れた子プロセスに渡されます。
putenv()を実行したプロセスが終了したときにはputenv()によって設定され
た環境変数は消滅します。putenv()によって親プロセスの環境変数を変化さ
せることはできません。
【リターン値】
getenv()は環境変数の値を返します。もし、nameという変数が見つからなか
ったときはNULLを返します。
putenv() は正常に処理が実行されたときには0を、失敗したときには-1を返
します。
【可搬性】
getenv()
ANSI, UNIX, DOS窓
putenv()
UNIX, DOS窓
【参照】
spawn(3), exec(3)
【copyright (c) 安江正樹@東海大学理学部物理学科】