std::getenv
來自 cppreference.com
定義於標頭檔案 <cstdlib> |
||
char* getenv( const char* env_var ); |
||
搜尋由宿主環境(作業系統)提供的環境變數列表,查詢與env_var
指向的C字串匹配的字串,並返回指向與匹配的環境變數列表成員相關聯的C字串的指標。
此函式不要求是執行緒安全的。對 |
(C++11 前) |
此函式是執行緒安全的(從多個執行緒呼叫它不會引入資料競爭),只要沒有其他函式修改宿主環境。特別是,如果未同步呼叫POSIX函式 |
(C++11 起) |
修改getenv
返回的字串會導致未定義行為。
目錄 |
[編輯] 引數
env_var | - | 以null結尾的字串,標識要查詢的環境變數的名稱 |
[編輯] 返回值
標識環境變數值的字串,如果未找到該變數則返回空指標。
[編輯] 注意
在POSIX系統上,環境變數也可透過全域性變數environ
(在<unistd.h>中宣告為extern char** environ;),以及透過main函式的可選第三個引數envp
訪問。
[編輯] 示例
執行此程式碼
#include <cstdlib> #include <iostream> int main() { if (const char* env_p = std::getenv("PATH")) std::cout << "Your PATH is: " << env_p << '\n'; }
可能的輸出
Your PATH is: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
[編輯] 參閱
C 文件的getenv
|