2015-12-02 53 views
0

所以我在服務器和客戶端之間進行通訊。我在網上搜索它時遇到了問題,請執行以下操作。C - 使用參數運行程序,例如./prog -p 8888

./server -p 1234 
./client -p 1234 -h asdffdsasdf 

可有人形容做的項目中的基礎知識或者是包含在Makefile ??(使用膩子終端)。

或者告訴我一個網站,它很好地解釋,因爲我不知道這是什麼谷歌。

非常感謝!

+0

不太清楚你問什麼。但是答案可能是'./server -p 1234&./client -p 1234 -h asdffdsasdf',它可以同時運行它們。除非窗戶。 – greggo

+0

不,我要問我需要做什麼,我可以運行它的參數,我怎麼創建.. 現在我可以打開2倍的油灰和 ./服務器在其中一個,然後 ./客戶端在其他.. 並得到我想要的迴應。但目前有一個固定的端口號。 不知怎的,我必須incorperate它,這樣我會做./server -p XXXX 所以我的服務器上的端口XXXX運行, 連接到它,我必須做同樣的客戶端 ./client -p XXXX 所以我得到正確的迴應。 –

回答

4

您需要使用程序啓動參數;請參閱Standard 5.1.2.2.1

例如

#include <string.h> 
int main(int argc, char **argv) { 
    if (argc >= 2) { 
     if (strcmp(argv[1], "-p") == 0) /* -p detected */; 
    } 
    return 0; 
} 

TLDR:剛剛看了標題

+0

這也適用於多個參數?即使我有5個不同的列表? 謝謝! –

+0

是的,它適用於您需要多少個參數。在訪問'argv'之前檢查'argc'。 – pmg

+0

冠軍! 謝謝 –