getenv用法

std::getenv

定義於頭文件 <cstdlib>

char* getenv( const char* env_var );

於宿主環境(操作系統)提供的環境列表搜索匹配 env_var 所指向的 C 字符串,並返回指向與匹配的列表成員關聯的 C 字符串的指針。

不要求此函數爲線程安全。到 getenv 的另一調用,還有到 POSIX 函數 setenv() 、 unsetenv() 及 putenv()的調用可能非法化先前調用所返回的指針,或修改從先前調用得到的字符串。(C++11 前)

只要無其他函數修改宿主環境,則此函數線程安全(從多個線程調用它不引入數據競爭)。尤其是若無同步地調用,則 POSIX 函數 setenv() 、 unsetenv() 及 putenv() 會引入數據競爭。(C++11 起)

修改 getenv 所返回的字符串引起未定義行爲。

參數

env_var - 標識要查找的環境變量名的空終止字符串

返回值

標識環境變量值的字符串,或若找不到這種字符串則爲空指針。

注意

POSIX 系統上,環境變量亦可通過於 <unistd.h> 聲明爲 extern char **environ; 的全局變量 environ ,及通過可選的 main 函數第三參數 envp 訪問。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章