gpt4 book ai didi

c - 使用系统调用执行c程序

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:25:27 25 4
gpt4 key购买 nike

我想用 C 编写一个程序,它可以读取另一个程序并将其交给处理器执行。是否可以使用系统调用来完成它而不使用 shell(linux)

谢谢

最佳答案

您正在寻找的系统调用是execve。它有相关的函数execl, execlp, execle, execv, execvp, 取决于关于如何存储和传递命令行参数和/或环境变量。但要注意的是,所有这些函数都会阻止调用它的程序执行任何其他操作,因为新程序会替换现有程序。

如果你想运行一个程序,等待它完成,然后恢复原来的程序,试试库函数system。 (尽管 system 确实需要/bin/sh。)

如果您需要更高级的东西,您可能需要将 forkwaitpidexec* 函数之一结合使用。手册页和网络上有大量关于如何组合这些功能的示例。

关于c - 使用系统调用执行c程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4600901/

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