putenv函数windows和linux的不同

来源:互联网 发布:领航珠宝软件多少钱 编辑:程序博客网 时间:2024/06/05 16:34

putenv函数windows和linux的不同


对于putenv函数,我们都知道是设置环境变量,用法如下:

功 能: 把字符串加到当前环境中

用 法: int putenv(char *envvar);

函数说明: putenv()用来改变或增加环境变量的内容。参数enwar的格式为enwar=value,如果该环境变量原先存在,则变量内容会依参数enwar改变,否则此参数内容会成为新的环境变量

返回值: 执行成功则返回0,有错误发生则返回-1


例如:putenv(“envtest=c:\windows”)


最近项目中发现,该函数在windows和linux中有个小小的不同,但很可能就是因为这个不同而导致bug。这个不同点在于putenv还可以删除环境变量。

windows环境下调用putenv(“envtest=”),就把该环境变量删除了

linux环境下调用putenv(“envtest=”),则是设置该环境变量为空,要删除,则需要调用putenv(“envtest”)。

就是一个等号的差别,导致该函数在不同系统中功能不尽相同。

原创粉丝点击