• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:TCP/IP通信型大文字・小文字変換プログラム)

TCP/IP通信型大文字・小文字変換プログラム

このQ&Aのポイント
  • TCP/IP通信型大文字・小文字変換プログラムを作成する際に、2つのプログラムの接続がうまくいかないという問題が発生しています。
  • クライアント側プログラムでは、キーボードから文字列を入力し、サーバーに送信し、サーバーから返ってきた文字列を画面に出力します。
  • サーバー側プログラムでは、クライアントから送信された文字列を大文字は小文字に、小文字は大文字に変換して返します。

質問者が選んだベストアンサー

  • ベストアンサー
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

クライアント側でIPアドレスとして 192.168.1.1を指定していますけど これはあってますか? プログラムにバグがあったので、それを修正した上で ループバックアドレス(127.0.0.1)を指定して試したところ うまく動作しました。 いきなりサーバーとクライアント両方を試すより、 サーバーは正しく動くのか、 クライアントは正しく動くのか をそれぞれ試すようにした方がよくはないですか。 サーバーのテストなら telnetでも試せますし。

noname#61460
質問者

お礼

大変助かりました。ありがとうございます。

その他の回答 (1)

  • aris-wiz
  • ベストアンサー率38% (96/252)
回答No.2

ネットワークプログラムの初歩的な部分には 特に問題なさそうな気がします。 #一応、htonl(INADDR_ANY);のほうがいいかな 接続先を確認するか、ネットワーク構成を 確認したほうが良いと思います。 あと、コーティングにいくつかまずい点があります。 {}をつけたりつけなかったりするのは よくありません。 つけるなら付けるきちっとしないと、 次のようなバグが出ます。 for(i=0; i<ret; i++)//括弧がないから次の一行に反映 if(islower(buf[i])) //括弧がないから次の一行に反映 buf[i] = toupper(buf[i]);//ここまでループ対象 //ループ終了。 if(isupper(buf[i]))//今回のプログラムでretが1024ならアクセス違反 buf[i] = tolower(buf[i]);

noname#61460
質問者

お礼

大変助かりました。ありがとうございます。

関連するQ&A