環境はenvironが指す配列に格納されている。
環境変数一覧を出力してみる。
#include <stdio.h>
extern char **environ;
main()
{
int i;
for( i = 0 ; environ[i] ; i++ )
printf("%s\n",environ[i]);
}
実行結果の一部。
EDITOR=/usr/bin/vim
LANG=ja_JP.utf-8
HISTCONTROL=ignoreboth
SHLVL=1
- ハッシュでなくて、配列にxxx=XXXみたいに格納されているのがちょっと意外だ
- 環境変数にアクセスするには単にextern char **environでいい