[英]Input output communication between two programs
我有一個名為kgsgtp.jar的第三方java程序,需要與我自己的C ++(但主要是C)程序進行通信。 java程序的文檔說明:
=====================
你只需要確保kgsGtp的stdin連接到引擎的輸出,而kgsGtp的stdout連接到引擎的輸入。 通常,最簡單的方法是在引擎內分叉和執行kgsGtp。
=====================
現在我是一個相當稱職的程序員,並且覺得我可以安排所有這些,僅僅提供一些線索。 我懷疑如果描述擴展到erm,10? 線條而不是三個半,然后我立即對它進行排序。
我猜這個文件通過分叉意味着什么,在我的程序中使用WinExec()或CreateProcess()來執行java程序? 我也猜測也許當我使用正確的函數時,一個程序的stdin對應另一個stdout的事實會自動發生嗎?
該描述適用於unixes,其中將使用一系列pipe(),dup2(),fork()/ exec()調用來執行此操作。
看看denis的答案中的代碼片段: 如何使用Windows程序在C ++中獲得控制台輸出? ,應該讓你開始。
編輯:更完整的示例在這里: http : //support.microsoft.com/kb/190351
你需要的是相當於Windows上的POSIX dup()可能是這個
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.