C言語のgetenv関数と環境変数の設定


getenv関数について

getenv関数はC言語の関数で、環境変数から情報を取得します。

getenv.c
getenv( "PATH" );

環境変数に、引数に一致する情報があれば、その情報の文字列で返し、
失敗した場合には、NULLが返されます。

環境変数について

環境変数を設定する為には、Windowsの検索で「ENV」と入力して実行します。

ユーザ環境変数とシステム環境変数の違い

個人のマシンであれば、大抵の場合システム環境変数に設定したほうが良いです。
すべてのユーザに反映されるからです。

ユーザ環境変数は、そのユーザにしか適用されないので、共用マシンで、きわめて個人的にしか使わない変数の場合に限ります。


 設定方法はいずれも同じで、変数を選択して[編集]もしくは[新規]ボタンを押します。

 PATHの設定の場合、既存パスを上書きしないで、うしろに追加するようにします。
(セミコロン;で区切る)

 環境変数は大文字と小文字を区別しないので、PATH と Path は同一として扱われます。

環境変数と設定されている値の一覧を表示する

 DOSプロンプトに引数無しで「SET」と入力し実行します。

尚、環境変数を変更する前に起動したDOSプロンプトには反映されませんので、その場合は、新たにDOSプロンプトを開いて確認してください。

PATHを通す

「PATH」は環境変数の中でも、もっとも良く使われる変数です。

そのファイルの存在するディレクトリをPATHに記述することで、実行ファイルを起動するときにフルパスで指定する代わりに、ファイル名だけで実行できるようになります。

例えば、ファイル名を指定して実行で「notepad」や「calc」や「cmd」と入力して実行するだけで実行出来るのもこのためです。
Windowsでよく使われる実行ファイルやDLLは%SystemRoot%system32でパスが設定されています。

JAVAの環境構築

また、JAVA環境構築において、よくパスを通すということが出てきますが、

Pathに、
JDKインストールパス\bin
例) C:\Program Files\Java\jdk1.8.0_231\bin

JAVA_HOMEを追加し
JDKインストールパス
例)C:\Program Files\Java\jdk1.8.0231\

を設定すればOKです。※バージョンは自分がインストールしたJAVAバージョンによります。

設定後は set JAVA_HOMEで確認してください。

この仕組みは、GoやRubyやPythonやどの言語でも同様です。

system32にあるいろいろな実行ファイルを呼び出してみたり、
自分好みにPathを設定したり色々試してみてください。