【问题标题】:setting environment variable using setenv [closed]使用 setenv 设置环境变量 [关闭]
【发布时间】:2014-01-03 18:31:34
【问题描述】:

我想在Linux中使用C设置和获取环境变量的值。谁能告诉我如何使用setenv环境变量。

我希望将环境值设置为零,并且在使用getenv 时,该环境值应该是0

【问题讨论】:

  • 不是想成为一个混蛋,而是想知道“man setenv”没有告诉你什么?而且,当您说“零”时,您是指值零还是字符零?
  • 可能有两个不同的东西叫做setenv,一个shell命令(仅当你使用csh或tcsh时可用;其他shell通常使用setexport用于相同目的)和一个 C 库函数(在尝试使用它之前你应该阅读它的手册页)。另请参阅putenv()
  • @ChrisCleeland 我的意思是零值

标签: c linux


【解决方案1】:

尝试使用 putenv() 而不是 setenv()。手册页的一小段内容说:

"setenv()函数在当前环境列表中插入或重置环境变量名。如果变量名在列表中不存在,则以给定值插入。如果变量存在,则参数覆盖被测试;如果覆盖为零,则变量不重置,否则重置为给定值。"

一个问题,当您说零时,您是在谈论零字符对吗?你必须在那里放一个字符串。

【讨论】:

  • 我不知道你将如何使用它。但是,如果您希望在另一个程序或控制台中执行程序后使用环境变量,那么它将无法工作,因为您在另一个会话中。 EV 的可见性是从父进程到子进程。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-15
  • 2015-01-14
  • 2013-03-11
  • 2018-06-29
  • 2012-10-16
  • 2021-09-23
相关资源
最近更新 更多