0

こんにちはみんな C でチャット サーバーを作成する必要があります。IPC を使用するだけで済みます。

これを進める方法を教えてください。スケルトン コードはとても役に立ちます。

4

1 に答える 1

2
  1. エコー サーバーを作成します。つまり、1 つのクライアントを受け入れ、クライアントが返すすべてのことを繰り返すサーバーです。

  2. このサーバーを拡張して、複数の同時接続をサポートします。

  3. サーバーがすべての接続にエコーするようにします。

  4. コマンドとして、クライアントからの行のパターンを考慮してください。たとえば、最初の「/」を使用して、エコーするのではなく、それらに基づいて動作します (接続を閉じる、接続に名前を付ける、接続を一覧表示するなど)。

  5. エコーされたすべてのテキストの前にクライアントの名前を付け、デフォルトの「Anonymous$N」を付けてから、#4 のコマンドで設定した名前を付けます。

  6. 新しい接続を受信するとき、サーバーがそこからテキストをエコーし​​て他のコマンドを処理し始める前に、サーバーに名前を引き出してもらいます。

等々。前述のように、Beej のガイドは、 #1 と #2 を乗り越えるのに役立ちます。

編集: OK、「IPC」言語を追加しました。IPC で対応できると思われる特別な要件がない限り、ループバック デバイスを介してこれにソケットを使用することもできます。UNIX ドメイン ソケット (名前付きパイプ) も使用できます。 perlipcは簡単な例でそれらについて説明しており、たとえばGNU C ライブラリのマニュアルに進むことができます。

于 2009-10-11T18:16:49.250 に答える