创建和访问环境变量,创建和访问环境变量
【 tulaoshi.com - C语言心得技巧 】
创建和访问环境变量
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)赵湘宁
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)环境变量的构成
PATH=C:WINDOWS在DOS和WINDOWS中,你可以从命令行或在批处理文件中定义环境变量,方法是使用SET命令,后面跟赋值表达式。下面是一个创建环境变量的例子,
SET VERSION=1.1.3在Unix中可以省略前面的SET,写为:
VERSION=1.1.3读取环境变量
char * getenv(const char * name);如果函数调用成功,它返回环境变量的字符串值。如果变量没有被定义,函数返回空(NULL)。例如:
#include <stdlib.h#include <stdio.hint main(){ char * descr = getenv("PATH"); if (descr) printf("value of PATH is: %s", descr); else printf("variable not defined");}设置环境变量
int putenv(const char * var);参数var必须是字符串,而且格式必须是“VAR=VAL”。putenv()将变量VAR添加到当前的环境变量中,并赋值VAL。如果变量已存在, putenv()覆盖现存的值。如果你不想覆盖现存变量的值,就先调用getenv()来检查变量是否存在,然后再调用putenv()。下面的例子是添加一个名为TEMP的环境变量,赋值为C:TEMP(注意反斜杠在C/C++字符串中的表示方法)。如果调用成功,putenv()返回0,否则返回-1。
int stat = putenv("TEMP=C:TEMP");if (!stat){ printf("环境变量定义失败"); }支持宽字符集变量
void func(); #include <stdlib.h#include <stdio.hint main(){ bool debug=false; if (getenv("DBG")) debug=true; if (debug) printf("calling func"); func(); if (debug) printf("returned from func");}
来源:http://www.tulaoshi.com/n/20160129/1485490.html