为了在C程序中获得环境变量,可以使用以下命令:

  • getenv()
  • extern char **environ;

  • 但是除了上面提到的以外,是否使用char *envp[]作为main()的第三个参数来获取被视为标准一部分的环境变量?
    #include <stdio.h>
    
    int main(int argc, char *argv[], char *envp[])
    {
        while(*envp)
            printf("%s\n",*envp++);
    }
    
    char *envp[]可移植吗?

    最佳答案

    函数getenv是C标准指定的唯一函数。函数 putenv 和extern environ 是特定于POSIX的。

    编辑

    POSIX未指定main参数envp,但它得到广泛支持。

    关于c - char * envp []是main()的第三个参数是否可移植,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10321435/

    10-10 16:54