2010-03-11 86 views
1

我有一個可以在命令提示符下啓動的c程序。 在我的另一個c程序中,我可以用這個應用程序吃午餐嗎? 如果是,如何?所有谷歌的結果告訴我如何使用pthread做到這一點?這會工作嗎? 我懷疑我需要一個新的程序用於我的c程序。如何從另一個c程序啓動c程序

謝謝。

+3

你想在Windows或Linux中做到這一點? – 2010-03-11 19:48:01

+0

我在Linux上嘗試這個(Ubuntu 9.10)。所以fork()比system()更有效率?由於用戶評論系統fork()兩次? – michael 2010-03-11 21:03:00

回答

3

它是系統的具體,但一般execve或類似的東西,並總有system("/path/to/program");,您可以使用特定的

+0

請記住'system()'分叉兩次* - 它的參數被傳遞給shell/command解釋器。 – 2010-03-11 20:13:32

0

除了明確的fork/execsystem之外,還有popen。 (所有在一個unixish環境)。

如果您更清楚地瞭解您的操作環境是什麼以及您需要如何與女兒進程交互,您會得到更好的幫助。

0

CreateProcess函數是在Windows中的方法。

您可以使用system()函數從字面上對控制檯發出命令,但我不記得它是否阻塞。

For linux look into execvThis page有一個linux的父母啓動子應用程序的例子在linux中包括一個通信管道之間的兩個..

此外,execve將通過可執行文件名啓動。

相關問題