目录
一、使用C程序访问环境变量
二、文件输入重定向
三、管道
四、信号
一、使用C程序访问环境变量
系统提供一个全局变量,extern char **environ; 内部存放结构如下
1、使用全局变量environ打印系统所有环境变量:
extern char **environ;int i=0;while(*(environ+i)!=NulL){ printf("%s\n",*(environ+i)); i++;}
2、使用main(int argc,char *argv,char *envp[])
#include<stdio.h>int main(int argc,char *argv[],char *envp[]){ int i=0; for(;envp[i]!=NulL;i++){ printf("%s\n",envp[i]); } return 0;}
3、通过函数 *** 作环境变量
getenv(3)
#include<stdlib.h>
char *getenv(const char *name)
功能:
获取环境变量的值
参数:
name:环境变量的名字
返回值:
没有找到匹配的环境变量:NulL
成功:环境变量值的首地址
printf("%s\n",getenv(UID));
putenv(3)
#include<stdlib.h>
int putenv(const char *name)
功能:
改变或增加一个环境变量
参数:
string:name=value格式的字符串
返回值:
错误:非0
成功:0
piutenv("name=pycoming")‘printf("name:%s\n",getenv(name));
name变量只是在此进程中被设置,此进程结束后,无法再查看。
clearenv(3)
#include<stdlib.h>
int clearenv(voID)
功能:
清除环境变量
参数:
voID
返回值:
错误:非0
成功:0
例略。
setenv(3)
#include<stdlib.h>
int setenv(const char *name,const char*value,int overwrite)
功能:
改变或增加一个环境变量
参数:
name:环境变量的名字
value:指定改变环境变量的值
overwrite:
0:环境变量的值存在,那么值被改变
非0:环境变量的值存在,不被改变
返回值:
错误:-1,errno被设置
成功:0
int unsetenv(const char *name,const char*value,int overwrite)
功能:
改变或增加一个环境变量
参数:
name:环境变量的名字
value:指定改变环境变量的值
overwrite:
0:环境变量的值存在,那么值不被改变
非0:环境变量的值存在,被改变
返回值:
错误:-1,errno被设置
成功:0
总结以上是内存溢出为你收集整理的Linux—环境变量(day09)全部内容,希望文章能够帮你解决Linux—环境变量(day09)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)