C++ getenv() 函数
如果传递给 getenv()
函数的环境变量不在环境变量列表中,它将返回一个空指针。
getenv() 函数原型
char* getenv( const char* env_var );
这个函数定义在 <cstdlib>
头文件中。
getenv() 参数
env_var
:包含环境变量名称的 C 字符串。
getenv() 返回值
getenv()
函数返回:
- 由
env_var
表示的环境变量的值。 - 如果环境变量不在环境变量列表中,它将返回一个空指针。
示例:getenv() 函数如何工作?
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
/* 可能的环境变量列表 */
const char *env_var[5] = {"PUBLIC","HOME","SESSIONNAME","LIB","SystemDrive"};
char *env_val[5];
for(int i=0; i<5; i++)
{
/* 如果存在,则获取环境变量的值 */
env_val[i] = getenv(env_var[i]);
if (env_val[i] != NULL)
cout << "变量 = " << env_var[i] << ", 值= " << env_val[i] << endl;
else
cout << env_var[i] << " 不存在" << endl;
}
}
当你运行程序时,可能的输出将是:
变量 = PUBLIC, 值= C:\Users\Public
HOME 不存在
变量 = SESSIONNAME, 值= Console
LIB 不存在
变量 = SystemDrive, 值= C:
注意: 输出会因设备不同而有所不同。为了查看所有环境变量及其值的列表:
对于 Windows: 在命令提示符上输入 set 并按回车键
对于 Linux: 在终端上输入 env 并按回车键