首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在C++中访问环境变量

在C++中访问环境变量
EN

Stack Overflow用户
提问于 2009-03-10 18:31:47
回答 2查看 109.1K关注 0票数 88

我希望能够访问我正在编写的C++程序中的$HOME环境变量。如果我用C语言编写代码,我只会使用getenv()函数,但我想知道是否有更好的方法。以下是我到目前为止拥有的代码:

std::string get_env_var( std::string const & key ) {                                 
    char * val;                                                                        
    val = getenv( key.c_str() );                                                       
    std::string retval = "";                                                           
    if (val != NULL) {                                                                 
        retval = val;                                                                    
    }                                                                                  
    return retval;                                                                        
}           

我应该使用getenv()来访问C++中的环境变量吗?有没有什么问题是我可能会遇到的,我可以通过一点知识来避免?

EN

回答 2

Stack Overflow用户

发布于 2011-03-23 13:30:26

我只想稍微重构一下代码:

std::string getEnvVar( std::string const & key ) const
{
    char * val = getenv( key.c_str() );
    return val == NULL ? std::string("") : std::string(val);
}
票数 33
EN

Stack Overflow用户

发布于 2009-03-10 18:39:46

在c++中,你必须使用std::getenv和#include <cstdlib>

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/631664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档