我有一个c程序,我可以在命令提示符下启动。 在我的另一个c程序中,这个应用程序的午餐是否可能? 如果有,怎么样?所有的谷歌搜索结果都告诉我如何使用pthread做到这一点?那会有用吗? 我怀疑我的c程序需要一个新的过程。
谢谢。
答案 0 :(得分:3)
这是系统特定的,但通常有execve
或类似的内容,并且您可以使用的system("/path/to/program");
也是系统特定的
答案 1 :(得分:3)
您是否考虑过使用fork()
和exec()
?
Fork将拆分一个进程,exec允许你从fork
'的一个实例开始一个新程序。
首先点击谷歌:
http://www.yolinux.com/TUTORIALS/ForkExecProcesses.html
正如其他人所提到的,细节可能会因您使用的操作系统而异。
答案 2 :(得分:0)
除了明确的fork
/ exec
和system
之外,还有popen
。 (所有都在一个单一的环境中)。
如果您更明确地了解您的操作环境以及您需要如何与女儿流程进行交互,那么您将获得更好的帮助。
答案 3 :(得分:0)
CreateProcess功能是Windows的最佳选择。
您可以使用system()函数对控制台进行命令,但我不记得它是否阻塞。
对于linux,请查看execv。 This page有一个linux父母在linux中启动子应用程序示例,包括两者之间的通信管道。
此外,execve将按可执行文件名启动。