我希望能够访问我正在编写的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++中的环境变量吗?有没有什么问题是我可能会遇到的,我可以通过一点知识来避免?
发布于 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);
}
发布于 2009-03-10 18:39:46
在c++中,你必须使用std::getenv和#include <cstdlib>
https://stackoverflow.com/questions/631664
复制相似问题