首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

system("export MY_ENV1=WAHAHA")没有效果,帮忙看看了解决方案

2012-03-05 
system(export MY_ENV1WAHAHA)没有效果,帮忙看看了intretchar*tmp0tmpgetenv( LD_LIBRARY_PATH )

system("export MY_ENV1=WAHAHA")没有效果,帮忙看看了
int   ret;
char*   tmp   =   0;

tmp   =   getenv( "LD_LIBRARY_PATH ");
printf( "LD_LIBRARY_PATH   =   %s\n ",   tmp);

ret   =   system( "export   MY_ENV1=WAHAHA ");
tmp   =   getenv( "MY_ENV1 ");
printf( "ret=%d,   MY_ENV1   =   %s\n ",   ret,   tmp);



打印结果:
LD_LIBRARY_PATH   =   /root/tslib/lib
ret=0,   MY_ENV1   =   (null)


如果我先在   shell   里面执行   export   MY_ENV1=
那么打印结果是
LD_LIBRARY_PATH   =   /root/tslib/lib
ret=0,   MY_ENV1   =  


谢谢!!

[解决办法]
用setenv函数,不要用system.
[解决办法]
那就这样
if ( fork() == 0 )
{
setenv(....);
exec ( 其它进程 )
}
[解决办法]
这个是办不到滴,用share memory吧
[解决办法]
用文件方式或socket、共享内存、管道吧,参见进程间通讯

热点排行