linux编程:getenv,putenv,setenv
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相关推荐
- linux getenv函数 get,linux之getenv putenv setenv和unsetenv详解
1.getenv函数 头文件:#include 函数原型: char * getenv(const char* name); 函数说明:getenv()用来取得参数name环境变量的内容. 函数参数: ...
- getenv putenv setenv和unsetenv详解
getenv: 定义函数 char * getenv(const char *name); 表头文件 #include<stdlib.h> 函数说明 getenv()用来取得参数name ...
- maya putenv 命令_linux下getenv putenv setenv和unsetenv
发布时间:2015-06-30 18:08:44 getenv: 阅读(1794) | 评论(0) | 转发(0) 发布时间:2015-06-16 17:41:39 多播的程序设计使用setsocko ...
- getenv、setenv和putenv实践
一 简介 获取环境变量函数:getenv #include <stdlib.h> char *getenv(const char *name); char *secure_getenv(c ...
- getenv、setenv函数(获取和设置系统环境变量) 与 环境变量
1.getenv() 函数名: getenv 功 能: 从环境中取字符串,获取 环境变量的值 头文件: stdlib.h 用 法:char *getenv(char *envvar); 函数说明:g ...
- 学习linux编程(一)
本文导航 一. Linux基础知识杂记 0. terminal操作快捷键等 1. 为什么vfork的子进程里用return,整个程序会挂掉,而且exit不会(zz) 2. 进程内存管理详解 3. 关于 ...
- getenv、setenv函数
getenv(取得环境变量内容) 相关函数 putenv,setenv,unsetenv 表头文件 #include<stdlib.h> 定义函数 char * getenv(const ...
- Linux编程题:信号量同步三进程依次打印若干次ABC
三个进程依次打印ABC..... 思路及大致流程如下: 思路取自这位大哥: Linux编程题:创建3个线程分别打印abc,用信号量进行同步_cleverlemon的博客-CSDN博客 这位大哥写的是线 ...
- linux编程取消wait函数,Linux编程基础之进程等待(wait()函数).pdf
Linux编程基础之进程等待(wait()函数) 编程过程中,有时需要让一个进程等待另一个进程 ,最常见的是父进程等待自己的子进程 ,或者父进程回收自己 的子进程资源包括僵尸进程.这里简单介绍一下系统 ...
- Linux 编程经典书籍推荐
成为一名精通 Linux 程 序设计的高级程序员一直是不少朋友孜孜以求的目标.根据中华英才网统计数据,北京地区 Linux 程序员月薪平均为 Windows 程序员的 1.8 倍.Java 程序员的 ...
最新文章
- Ant Design Vue中a-select组件下拉列表在局部滚动时不跟随问题解决方法
- [Cocoa]深入浅出Cocoa之Core Data(4)- 使用绑定
- 【转】软件工程师的年终总结2
- 深度研究 | 区块链在征信业的应用探讨:切中了痛点,但也面临四大挑战
- ibatis解决sql注入问题
- Azure 中国篇之网络服务—(2)Azure虚拟机使用公网ip(PIP)
- MVC3 Razor语法速查
- 【项目篇】Android团队项目开发之统一代码规范
- 自写程序的打包成软件
- 有关单片机驱动IR2104遇到的问题及解决方法
- Spring Websocket 使用笔记
- 卷积神经网络实现手写数字集
- < 性能提升 Get √ :如何理解 “ 回流 ” 与 “ 重绘 ” ?如何合理的减少其出现呢 ? >
- python判断人生阶段
- 重庆各大学计算机专业的录取分数线,重庆各高校历年录取分数线+王牌专业汇总!填报志愿必看!...
- python中的pep_Python的PEP文档是什么?
- 稀疏问题的解决——数据平滑 - yiyi_xuechen
- 【NOIP2017提高组正式赛】列队
- End-to-End Entity Resolution for Big Data: A Survey Matching部分学习笔记
- K线入门之单根K线图