linux下c/c++程序设置环境变量及相关函数

头文件:

        #include <stdlib.h>或#include <cstdlib>

一.设置环境变量

1.1.int putenv(char *string);

        string为指向环境变量的指针,其中环境变量必须以 "name=value" 的形式。如果环境表中没有 name 这个环境变量,则添加该环境变量;如果环境表中已经有了name这个环境变量,则先删除之前的 value,再修改为新的 value。

例:

//等同于export LIB_PATH=project/lib
putenv("LIB_PATH=project/lib");

1.2.int setenv(const char *name, const char *value, int overwrite);

name:环境变量名 value:环境变量值  overwrite:重写选项,当 name 在环境表中存在时,如果 overwrite 的值为 0 ,则不修改name的值;如果 overwrite 的值为 非0,则修改name的值。

例:

//如果存在LIB_PATH不修改它的值
setenv("LIB_PATH","project/lib",0);
//如果存在LIB_PATH也修改它的值
setenv("LIB_PATH","project/lib",1);

二.删除环境变量

int unsetenv(const char *name);

删除该环境变量,即便原本不存在name也不会报错。

例:

unsetenv("LIB_PATH");

三.查看环境变量

char *getenv(const char *name);

 name为环境变量名,成功返回指向环境变量值的char指针,失败返回NULL

例:

char *p=getenv("LIB_PATH");
printf("%s",p);

posted @   shldy1999  阅读(688)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示