Tag: setenv

为什么围绕setenv()的包装不起作用?

我有下面的方法,它正确地将ret值设置为0(表示setenv成功),但是当我检查这个环境变量是否实际设置时,它不存在。 为什么会这样? void Class::mysetenv(char* a, char* b) { if(a==0 || b==0) return; int ret = setenv(strdup(a), strdup(b), 1); printf(“ret: %d %s %s\n”, ret, a, b); }