Posted on 2006-03-18 22:00
天涯浪子 阅读(956)
评论(0) 编辑 收藏 引用 所属分类:
(三)C++高级部分——Unix C++部分
/*变量p用来存放自己定义的环境变量,而pt用来存放系统环境变量的PATH值
注意:此例应该先判断变量的返回值是否为空
取得环境变量函数的格式如下:
char* getenv(const char *name); return value for environment name.
int putenv(const char* str); change or add value to environment.
*/
#include <stdlib.h>
#include <iostream>
using namespace std;
int main(){
char *p = NULL;
char *pt=NULL;
p = getenv( "AAA" );
pt =getenv("PATH");
if( p == NULL )
cout<<"No such env named AAA"<<endl;
else
cout<<"AAA=" << p << endl;
if( pt == NULL )
cout<<"No such env named PATH"<<endl;
else
cout<<"PATH=" << pt<< endl;
putenv( "AAA=123456" );
cout<<"AAA=" << getenv( "AAA" ) << endl;
putenv("AAA=123");
cout<<"AAA="<<getenv("AAA")<<endl;
cout<<"PATH="<<getenv("PATH")<<endl;
return 0 ;
}
/*问题:
假如环境变量YU在用户的shell下的值是123456,在我们的应用程序中
通过getenv()和putenv()来更改该环境变量为abcdef,那么当我们结束应用
程序后回到shell下时,我们用命令echo $YU,那么结果应该是什么?
*/