1、getenv

头文件
#include<stdlib.h>
函数原型
char * getenv(const char *name);
函数说明
getenv()用来取得参数name环境变量的内容。参数name为环境变量的名称,如果该变量存在则会返回指向该内容的指针。环境变量的格式为name=value。
返回值
执行成功则返回指向该内容的指针,找不到符合的环境变量名称则返回NULL。

举例:

#include<stdlib.h>
int mian()
{
    char *p;
    if((p = getenv(“USER”)))
        printf(“USER=%s\n”,p);

return 0;
}

执行结果:USER = root

2、putenv

头文件

#include4<stdlib.h>

定义函数

int putenv(const char * string);

函数说明

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

返回值

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

举例:

#include<stdlib.h>
int main()
{
  char *p;
  if((p = getenv(“USER”)))
    printf(“USER =%s\n”,p);
  putenv(“USER=test”);
  printf(“USER+%s\n”,getenv(“USER”));
}

执行:

USER=root
USER=test

3、setenv

头文件
#include<stdlib.h>
定义函数
int setenv(const char *name,const char * value,int overwrite);
函数说明
setenv()用来改变或增加环境变量的内容。参数name为环境变量名称字符串。
参数
value则为变量内容,参数overwrite用来决定是否要改变已存在的环境变量。如果overwrite不为0,而该环境变量原已有内容会被改为参数value所指的变量内容。如果overwrite为0,且该环境变量已有内容,则参数value会被忽略。
返回值
执行成功则返回0,有错误发生时返回-1。

举例:

#include<stdlib.h>
int main()
{
  char * p;
  if((p=getenv(“USER”)))
    printf(“USER =%sn”,p);
  setenv(“USER”,"test",1);
  printf(“USER=%sn”,getenv(“USEr”));
  unsetenv(“USER”);
  printf(“USER=%sn”,getenv(“USER”));
}

执行:

USER = root
USER = test
USER = (null)

说明:1、unsetenv函数就是清除环境变量的值(value),这个很明显

2、如果overwrite 的值是0,并且环境变量name中的value是空(NULL),也会将传进的参数值value赋给环境变量name。这一特性经常使用。

linux编程:getenv,putenv,setenv相关推荐

  1. linux getenv函数 get,linux之getenv putenv setenv和unsetenv详解

    1.getenv函数 头文件:#include 函数原型: char * getenv(const char* name); 函数说明:getenv()用来取得参数name环境变量的内容. 函数参数: ...

  2. getenv putenv setenv和unsetenv详解

    getenv: 定义函数 char * getenv(const char *name); 表头文件 #include<stdlib.h>  函数说明 getenv()用来取得参数name ...

  3. maya putenv 命令_linux下getenv putenv setenv和unsetenv

    发布时间:2015-06-30 18:08:44 getenv: 阅读(1794) | 评论(0) | 转发(0) 发布时间:2015-06-16 17:41:39 多播的程序设计使用setsocko ...

  4. getenv、setenv和putenv实践

    一 简介 获取环境变量函数:getenv #include <stdlib.h> char *getenv(const char *name); char *secure_getenv(c ...

  5. getenv、setenv函数(获取和设置系统环境变量) 与 环境变量

    1.getenv() 函数名: getenv 功 能: 从环境中取字符串,获取 环境变量的值 头文件:  stdlib.h 用 法:char *getenv(char *envvar); 函数说明:g ...

  6. 学习linux编程(一)

    本文导航 一. Linux基础知识杂记 0. terminal操作快捷键等 1. 为什么vfork的子进程里用return,整个程序会挂掉,而且exit不会(zz) 2. 进程内存管理详解 3. 关于 ...

  7. getenv、setenv函数

    getenv(取得环境变量内容) 相关函数 putenv,setenv,unsetenv 表头文件 #include<stdlib.h> 定义函数 char * getenv(const ...

  8. Linux编程题:信号量同步三进程依次打印若干次ABC

    三个进程依次打印ABC..... 思路及大致流程如下: 思路取自这位大哥: Linux编程题:创建3个线程分别打印abc,用信号量进行同步_cleverlemon的博客-CSDN博客 这位大哥写的是线 ...

  9. linux编程取消wait函数,Linux编程基础之进程等待(wait()函数).pdf

    Linux编程基础之进程等待(wait()函数) 编程过程中,有时需要让一个进程等待另一个进程 ,最常见的是父进程等待自己的子进程 ,或者父进程回收自己 的子进程资源包括僵尸进程.这里简单介绍一下系统 ...

  10. Linux 编程经典书籍推荐

    成为一名精通 Linux 程 序设计的高级程序员一直是不少朋友孜孜以求的目标.根据中华英才网统计数据,北京地区 Linux 程序员月薪平均为 Windows 程序员的 1.8 倍.Java 程序员的 ...

最新文章

  1. Ant Design Vue中a-select组件下拉列表在局部滚动时不跟随问题解决方法
  2. [Cocoa]深入浅出Cocoa之Core Data(4)- 使用绑定
  3. 【转】软件工程师的年终总结2
  4. 深度研究 | 区块链在征信业的应用探讨:切中了痛点,但也面临四大挑战
  5. ibatis解决sql注入问题
  6. Azure 中国篇之网络服务—(2)Azure虚拟机使用公网ip(PIP)
  7. MVC3 Razor语法速查
  8. 【项目篇】Android团队项目开发之统一代码规范
  9. 自写程序的打包成软件
  10. 有关单片机驱动IR2104遇到的问题及解决方法
  11. Spring Websocket 使用笔记
  12. 卷积神经网络实现手写数字集
  13. < 性能提升 Get √ :如何理解 “ 回流 ” 与 “ 重绘 ” ?如何合理的减少其出现呢 ? >
  14. python判断人生阶段
  15. 重庆各大学计算机专业的录取分数线,重庆各高校历年录取分数线+王牌专业汇总!填报志愿必看!...
  16. python中的pep_Python的PEP文档是什么?
  17. 稀疏问题的解决——数据平滑 - yiyi_xuechen
  18. 【NOIP2017提高组正式赛】列队
  19. End-to-End Entity Resolution for Big Data: A Survey Matching部分学习笔记
  20. K线入门之单根K线图

热门文章

  1. ZOJ 3700 Ever Dream(模拟)
  2. 使用JavaScript让网页title动起来
  3. 微软的搜索引擎挺不错的
  4. sql server中将一个字段根据某个字符拆分成多个字段显示
  5. getResources()方法
  6. 修复bug的12个关键步骤:
  7. cookie中文乱码
  8. 面试题01(C++)
  9. 现代谱估计:MTM 谐波分析
  10. 深入理解Linux软件包的配置、编译与安装