博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下的C程序:使用和设置环境变量
阅读量:6211 次
发布时间:2019-06-21

本文共 1249 字,大约阅读时间需要 4 分钟。

hot3.png

本程序实现了3个功能:

1)从当前用户的环境变量中读取一个环境变量的值;

2)设定一个临时的环境变量,有效期直到程序运行结束;

3)遍历当前用户所有的环境变量

程序代码:

#include 
#include
//宏:分割两个不同的部分#define SEPARATE() printf("\n= = = = =\n\n")extern char **environ;void main(){ //打印指定的环境变量值 printf("打印指定的环境变量值\n"); char *var, *value; var = "USER"; value = getenv(var); if (value) { printf("[%s]: %s\n", var, value); } else { printf("[%s] 没有这个环境变量\n", var); } SEPARATE(); //添加一个环境变量 printf("添加一个环境变量\n"); var = "TEST_20140926"; value = getenv(var); if (!value) { printf("没有环境变量 %s\n", var); } if (putenv("TEST_20140926=12345678") == 0) { printf("添加环境变量 TEST_20140926\n"); } else { printf("环境变量 TEST_20140926 添加失败\n"); exit(EXIT_FAILURE); } value = getenv(var); if (value) { printf("[%s]: %s\n", var, value); } //注意:这个新增的环境变量仅仅对这个程序本身有效 //这是因为变量的值不会从子进程(本程序)传播到父进程(Shell) SEPARATE(); //打印全部环境变量 printf("打印全部环境变量\n"); char **env = environ; while (*env) { printf("%s\n", *env); env++; } exit(EXIT_SUCCESS);}

运行结果:(输入命令“gcc a.c -o b”编译)

142008_DVD2_1425762.png

(因为环境变量有很多,打印全部环境变量中只截图截取了一部分)

END

转载于:https://my.oschina.net/Tsybius2014/blog/323168

你可能感兴趣的文章
GDPR如何影响中国企业?
查看>>
Linux基础软件包编译安装
查看>>
限定某个目录禁止解析(apache)
查看>>
分享一例S7-391电池不充电修理的案例
查看>>
硬盤空間佔用的處理方式(待更新)
查看>>
docker 分析
查看>>
java 面向对象
查看>>
Spring Task使用笔记
查看>>
linux资料整理之进程管理
查看>>
js多级联动示例(省份和城市二级联动)
查看>>
Android Studio通知 顶部通知栏
查看>>
php规范PSR-4
查看>>
(一) 驱动模块搭建与测试
查看>>
oracle问题收集
查看>>
Android开发之Eclipse与Android Studio的java类 作者版权模板
查看>>
centos6.8 dhcpd
查看>>
一方包、二方包、三方包是什么?
查看>>
VMware Horzion View 6.0 Part 10 之RDS Desktop和RDS APP创建
查看>>
总结redis第二部分(redis常用命令、高级命令特性以及与java代码的结合)
查看>>
白领读小说 版本1.0 D盘自己放XXX.TXT 就可以
查看>>