非常に小さな C または C++ TCP サーバー/クライアント ソリューションを迅速に実装する必要があります。これは、あるコンピューターから別のコンピューターに文字列のバイト配列を転送するだけです。スケーラブル/過度に複雑である必要はありません。シンプルなほど良い。できれば手早く汚い。
このチュートリアルのコードを使用しようとしましたが、Linux で g++ を使用してビルドすることはできませんでした: http://www.linuxhowtos.org/C_C++/socket.htm
これを実行しているシステムは非常に制限されているため、可能であれば、サードパーティのライブラリは避けたいと思います。既存のアプリケーションが既に実装されているため、これは C または C++ である必要があります。
emg-2の回答のおかげで、次の手順を使用して、上記のコード サンプルを C++ と互換性を持たせることができました。
これらのヘッダーをクライアントとサーバーの両方に追加します。
#include <cstdlib>
#include <cstring>
#include <unistd.h>
server.cで、clilen のタイプを socklen_t に変更します。
int sockfd, newsockfd, portno/*, clilen*/;
socklen_t clilen;
client.cで、次の行を変更します。
if (connect(sockfd,&serv_addr,sizeof(serv_addr)) < 0) { ... }
に:
if (connect(sockfd,(const sockaddr*)&serv_addr,sizeof(serv_addr)) < 0)