c 中的 setenv() 不添加我的自定义 bin 目录

setenv() in c doesn't add a my custom bin directory

我想将我的 folmer /myBin/bin 添加到 PATH 环境变量中,这样我就可以 execvp()这些。

setenv() 似乎没有将我的目录添加到 PATH,我错过了什么?

谢谢

#include <stdlib.h>
#include <limits.h>
#include <string.h>
#include <stdio.h>

int main(void){
    char binDir[PATH_MAX+1];
    strcpy(binDir,"~/myBin/bin");
    char pathDir[PATH_MAX+1];
    strcpy(pathDir,"PATH");

    printf("Variable d'environnement (%s)\n\n\n", getenv("PATH"));
    setenv(pathDir,binDir,0);
    printf("Variable d'environnement (%s)\n", getenv("PATH"));
    return 0;
}

您已根据 setenv 文档将 setenv 的最后一个参数设置为 0 "if overwrite is zero, then the value of name is not changed. ",您可以尝试将 1 作为覆盖参数传递给 setenv