• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:2バイトの文字データの送信)

2バイトの文字データの送信方法とは?

このQ&Aのポイント
  • 2バイト分のデータを送信する方法を教えてください。
  • ソースコードを含めた具体的な手順を教えてください。
  • 2バイトの文字データを送信する際に注意すべき点はありますか?

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

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.2

>SOCKET sTest; >send(sTest,data,sizeof(data),0); socketの初期化やconnectしていますか? send()がエラー返していませんか? >SOCKET sTest; >int hrecv; >char data[SIZE]; >while(1){ >recv(sTest,data,SIZE,0); >if(hrecv == 0){ >colsesocket(sTest); こちらもsocketの初期化は正しく行っていますか? ポートの割り当てやacceptなど必要ですし、送信側が2バイトずつ送信したからと言って受信側のrecv()でも同じように受信できるとは限らない点は理解していますか? hrecvが書き換わっていないようですが問題ありませんか? recv()の戻り値を受けているものと思われますが…

nero3657
質問者

お礼

指摘された点を直してみたところ、送受信できました。 ありがとうございます!

その他の回答 (1)

  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.1

> 送信しようと思っている どんな環境で、どこからどこへ送信しようとしていますか? > なかなかうまくいきません。 何をしたときにどんな風にうまくいきませんか? コンパイルエラーですか? 実行時のエラーですか? どんなエラーメッセージが出ますか? > char data[2] = 2; この初期化の意味を教えてください。 > send(sTest,data,sizeof(data),0); > recv(sTest,data,SIZE,0); > colsesocket(sTest); これらの関数は自作ですか? もともと用意してあるものですか? colsesocketのスペルは正しいですか? closesocketではないですか?

nero3657
質問者

補足

分かりにくい説明ですいません。 >どんな環境で、どこからどこへ送信しようとしていますか? クライアントからサーバへ2バイトのデータを送信したいのです。 >何をしたときにどんな風にうまくいきませんか? クライアントからサーバへデータを送信するために クライアント側に送信する関数のsendを設置してsendでデータを送りデータを受信するためにサーバ側にrecv関数を設置し、データを受信するようにコードを書いたのですが送信もされず受信もされません。 >コンパイルエラーですか? 実行時のエラーですか? エラーはでません。 >char data[2] = 2; ↑間違いです。正しいのは char data[2]= "2"; です。 colsesocketは打ち間違いです。 すいません。