在Linux上调用C++中的可执行文件,并等到它完成

4 c++ linux shell

我正在尝试编写一个程序,在某些时候,需要通过系统调用外部应用程序并等待其他可执行文件完成.我非常想要一个python subprocess.call(...)方法的C++版本.我知道system()可以通过shell调用命令,但我不知道它是否能够在命令终止之前阻塞.有人知道正确的方法吗?

我正在为Linux系统编写这个,但如果可能的话,我希望它是可移植的.无论如何,任何帮助将不胜感激.

Bog*_*tyr 10

system()等待命令完成:

http://linux.die.net/man/3/system

system()通过调用/ bin/sh -c命令执行命令中指定的命令,并在命令完成后返回.在执行命令期间,SIGCHLD将被阻止,SIGINT和SIGQUIT将被忽略.