如何设置环境变量在ISO C99标准C无SETENV()?(How to set environme

2019-10-19 05:16发布

我不能使用setenv()stdlib.h ,因为它不适用于C99标准的编译器。 是否有任何其他功能设置在C99环境变量?

Answer 1:

getenv因此它包括在C99但C90标准的一部分setenv仅符合一个IEEE标准所以它不被包括在严格标准C99。 此外,对应的是IEEE 2001。

这意味着,没有在C99这样做的任何标准的方式,你必须使用特定于平台的代码来设置ENV。

在FreeBSD 手册页 :

所述的getenv()函数符合ISO / IEC 9899:1990( ISO C90''). The setenv(), putenv() and unsetenv() functions conforms to IEEE Std 1003.1-2001 ( ISO C90''). The setenv(), putenv() and unsetenv() functions conforms to IEEE Std 1003.1-2001 ( POSIX.1 '')。


setenvputenv等都应任何POSIX系统上进行定义。

如果你使用的是Windows,请参阅本等问题 ,其谈论_putenv_s



文章来源: How to set environment variable in ISO c99 Standard C without setenv()?
标签: c c99 setenv