• ベストアンサー

ソケット通信の送受信方法

ソケット通信を用いて、簡単な通信ゲームを作成しようと思っています。 メッセージ送信時に構造体を送りたいと思っているのですが どう指定してもエラーになってしまい、作業が止まってしまっています。 下記の様な指定の仕方ですと、エラーは起きないのですが・・・ char buf[256] = { 0 }; send(clsock,buf,256,0); typedef struct{ int a; int b; }sample; 上記のような構造体を送信、受信する場合は、どのように指定すれば良いのでしょうか? 知っている方いましたらご教授お願いします。

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

  • ベストアンサー
  • hjoshua
  • ベストアンサー率66% (6/9)
回答No.2

'send':2番目の引数を'sample *'から'const char*'に変換できません。 とエラーが出てしまいます。 >>> typedef struct{ int a; int b; }sample; sample A; send(clsock,(char*)&A,sizeof(sample),0); というふうに強制的に型変換してやれば、問題ないでしょう。

その他の回答 (1)

  • furyfox
  • ベストアンサー率56% (58/103)
回答No.1

typedef struct{ int a; int b; }sample; sample A; send(clsock,&A,sizeof(sample),0);

maxpower-zero
質問者

補足

ご返答ありがとうございます。 早速試して見ましたところ 'send':2番目の引数を'sample *'から'const char*'に変換できません。 とエラーが出てしまいます。 この場合はどうすれば良いのでしょうか? 遅くなりましたが、動作環境は WinXp Pro:VC++.netです。

関連するQ&A

専門家に質問してみよう