说明:
本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。
QQ 群 号:513683159 【相互学习】
内容来源:
《Unix环境高级编程》、man 手册
目录:
一、概念认识
入门系列:基础认知——环境变量
main函数的第三个参数:环境表
二、函数简介
① getenv()——获取一个环境变量
1.函数功能:在环境列表中搜索name
环境变量名,并返回一个指向相应值字符串的指针。
项目 | 说明 |
---|---|
函数原型 | char *getenv(const char *name); |
头文件 | stdlib.h |
参数说明 | name:环境变量名 |
返回值 | 返回一个指向环境中的值的指针, 如果没有匹配,则返回NULL。 |
注意 |
② putenv()—— 更改或添加环境变量
1.函数功能:增加或改变环境变量的值。
项目 | 说明 |
---|---|
函数原型 | int putenv(char *string); |
头文件 | stdlib.h |
参数说明 | string:字符串 形式是`name=value` |
返回值 | 成功返回0, 失败返回-1,并设置errno |
注意 | ①若环境中还不存在name,则将字符串添加到环境中 ②若环境中name存在,那么环境中name的值将更改为value 字符串所指向的字符串成为环境的一部分,因此改变字符串将改变环境。 |
③ setenv()——更改或添加环境变量
1.函数功能:
若name
不存在的话,将变量名和值value
添加到name
环境中,
若name
在环境中存在,
若overwrite
为非零值,它的值将被更改为value
若overwrite
为0
,那么name
的值不会改变(setenv()返回一个成功状态)。
项目 | 说明 |
---|---|
函数原型 | int setenv(const char *name, const char *value, int overwrite); |
头文件 | stdlib.h |
参数说明 | name:环境变量名 |
value:环境变量值 | |
overwrite:标记 | |
返回值 | 成功返回0, 失败返回-1,并设置errno |
注意 |
④ unsetenv()——删除环境变量
1.函数功能:从环境中删除变量名。如果环境中不存在name
,则函数成功,且环境没有改变。
项目 | 说明 |
---|---|
函数原型 | int unsetenv(const char *name); |
头文件 | stdlib.h |
参数说明 | name:环境变量名 |
返回值 | 成功返回0, 失败返回-1,并设置errno |
注意 |