我有一個C函數調用另一個軟件來執行並生成一個文件,然後它操縱數據,例如,在C系統調用
void main()
{
function();
//manipulate data in output.txt
}
void execute()
{
system("./test input.txt output.txt");
}
對於沒有被充分產生的output.txt的文件中的一些原因...如何將系統調用的工作?在系統調用結束之前會執行返回主?如果是的話我該如何解決這個問題?我使用gcc在ubuntu上工作
系統應該等待傳入的命令完成。也許錯誤發生在./test?你可以檢查系統的返回值來檢查(儘管你需要查閱Ubuntu的參考資料,看看有什麼數值表明了什麼)。 – dlev 2011-05-18 17:09:29
請注意'。/'的意思是相對於當前工作目錄而不是包含你的目錄二進制文件。 – 2011-05-18 17:19:31
還有一點很好,當input.txt是小文件時它工作正常,但是當input.txt很大時它就像一些數據沒有被處理......當我在代碼之外執行代碼時,它系統調用 – 2011-05-18 17:30:26