c++ - 如何在 linux C++ 中启动进程

标签 c++ linux process

<分区>

我尝试使用 exec() 函数,但我需要用于 unix/linux 的函数,它可以启动进程:

  1. 工作目录
  2. 争论
  3. 重要!环境变量,如 LD_PRELOAD

谢谢!

最佳答案

如果你 fork() 你得到当前进程的拷贝(所以是同一个工作目录),然后你可以使用你需要的参数执行,这会用目标可执行文件中的内容替换当前程序文本(代码) .尝试使用“man exec”或使用 google“fork exec”作为示例。

例如。

if (fork() == 0) {
  // Child process
  exec("./test", "./test", "-a", NULL); // check the null though
}
// Parent process

希望对你有帮助

关于c++ - 如何在 linux C++ 中启动进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13777143/

相关文章:

linux - Bash 输出仅限于回显

c - 服务器设计模式/最佳实践的最佳来源是什么?

delphi - 使用 Delphi 终止其他机器(通过网络)上正在运行的进程?

c++ - 为什么必须将std::stable_sort()的比较器函数的参数设置为常量?

c++ - 您是否应该能够从 T 具有非平凡构造函数的 std::optional<T> 移动?

java - 如何在 Linux 中终止和停止在应用程序外运行的 TimerTask

node.js - 在 CoffeeScript 中使用 child_process.send 时缺少消息

c++ - 多维数组麻烦(bounds)

c++ - 效用函数的匿名命名空间

pandaboard 的 linux i2c 驱动程序