getenv(取得環(huán)境變量?jī)?nèi)容)
相關(guān)函數(shù) putenv,setenv,unsetenv
表頭文件 #include<stdlib.h>
定義函數(shù) char * getenv(const char *name);
函數(shù)說明 getenv()用來取得參數(shù)name環(huán)境變量的內(nèi)容。參數(shù)name為環(huán)境變量
的名稱,如果該變量存在則會(huì)返回指向該內(nèi)容的指針。環(huán)境變量的
格式為name=value。
返回值 執(zhí)行成功則返回指向該內(nèi)容的指針,找不到符合的環(huán)境變量名稱則
返回NULL。
范例 #include<stdlib.h>
mian()
{
char *p;
if((p = getenv(“USER”)))
printf(“USER=%s\n”,p);
}
執(zhí)行 USER = root
putenv(改變或增加環(huán)境變量)
相關(guān)函數(shù) getenv,setenv,unsetenv
表頭文件 #include4<stdlib.h>
定義函數(shù) int putenv(const char * string);
函數(shù)說明 putenv()用來改變或增加環(huán)境變量的內(nèi)容。參數(shù)string的格式為
name=value,如果該環(huán)境變量原先存在,則變量?jī)?nèi)容會(huì)依參數(shù)
string改變,否則此參數(shù)內(nèi)容會(huì)成為新的環(huán)境變量。
返回值 執(zhí)行成功則返回0,有錯(cuò)誤發(fā)生則返回-1。
錯(cuò)誤代碼 ENOMEM 內(nèi)存不足,無法配置新的環(huán)境變量空間。
范例 #include<stdlib.h>
main()
{
char *p;
if((p = getenv(“USER”)))
printf(“USER =%s\n”,p);
putenv(“USER=test”);
printf(“USER+5s\n”,getenv(“USER”));
}
執(zhí)行 USER=root
USER=root
setenv(改變或增加環(huán)境變量)
相關(guān)函數(shù) getenv,putenv,unsetenv
表頭文件 #include<stdlib.h>
定義函數(shù) int setenv(const char *name,const char * value,int
overwrite);
函數(shù)說明 setenv()用來改變或增加環(huán)境變量的內(nèi)容。參數(shù)name為環(huán)境變量名
稱字符串。
參數(shù) value則為變量?jī)?nèi)容,參數(shù)overwrite用來決定是否要改變已存在的
環(huán)境變量。如果overwrite不為0,而該環(huán)境變量原已有內(nèi)容,則原
內(nèi)容會(huì)被改為參數(shù)value所指的變量?jī)?nèi)容。如果overwrite為0,且該
環(huán)境變量已有內(nèi)容,則參數(shù)value會(huì)被忽略。
返回值 執(zhí)行成功則返回0,有錯(cuò)誤發(fā)生時(shí)返回-1。
錯(cuò)誤代碼 ENOMEM 內(nèi)存不足,無法配置新的環(huán)境變量空間
范例 #include<stdlib.h>
main()
{
char * p;
if((p=getenv(“USER”)))
printf(“USER =%s\n”,p);
setenv(“USER”,”test”,1);
printf(“USER=%s\n”,getenv(“USEr”));
unsetenv(“USER”);
printf(“USER=%s\n”,getenv(“USER”));
}
執(zhí)行 USER = root
USER = test
USER = (null)