アプリケーションをWindowsからLinuxに移植しようとしています。Windowsでは、windows.hにGetEnvironmentStrings()関数があります。この関数は、現在のプロセスの環境変数とその値をNAME=VALUEの形式で提供します。
これに相当するLinux関数呼び出しはありますか?C関数が必要です。Linuxでこれをどのように達成できますか?
アプリケーションをWindowsからLinuxに移植しようとしています。Windowsでは、windows.hにGetEnvironmentStrings()関数があります。この関数は、現在のプロセスの環境変数とその値をNAME=VALUEの形式で提供します。
これに相当するLinux関数呼び出しはありますか?C関数が必要です。Linuxでこれをどのように達成できますか?
変数を介して環境変数にアクセスできますextern char **environ;
。
環境変数の値は文字列です。C言語プログラムの場合、プロセスの開始時に環境と呼ばれる文字列の配列が使用可能になります。配列は、次のように定義される外部変数environによってポイントされます。
extern char **environ;
これらの文字列の形式は
name=value
。
SVr4、POSIX.1-2001、4.3BSD、C89、C99に準拠したgetenv()があります。