gpt4 book ai didi

c - getenv() 将环境返回为 null?

转载 作者:太空宇宙 更新时间:2023-11-04 02:28:16 26 4
gpt4 key购买 nike

我正在尝试使用以下代码在 c 和 bash 中打印当前目录中的可执行文件:

system("EXEC_PATH=$(find . -maxdepth 1 -type f -executable)");
printf("executables are: %s\n", getenv("EXEC_PATH"));

但是,当我编译并运行c代码时,得到的结果是:

executables are: (null)

任何帮助将不胜感激!

最佳答案

system() 正在创建一个新的 shell 并在其中设置环境,然后在该 shell 退出时将其丢弃。

getenv() 正在使用“当前”进程的环境。

尝试获取系统调用的结果并使用putenv修改当前环境。

关于c - getenv() 将环境返回为 null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47685999/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com