質問: ?????; というように、「s_addr」というメンバにアクセスしてるサンプルをよく見かけますが、msdnライブラリによると、 typedef struct in_addr { union { struct { u_char s_b1,s_b2,s_b3,s_b4; } s_un_b; struct { u_short s_w1,s_w2; } s_un_w; u_long s_addr; } s_un; } in_addr; となっていて、「s_addr」のメンバはどこにもないんですよね。。 これはどういうことなんでしょう。 ちなみに自分の発想でアクセスするとしたら、例えばu_longとしてだったら、 a.s_un.s_addr というようなものしか思いつきません。 あと、ネットワークプログラミング初心者の自分にもわかるような、winsockについてやさしく、しかもくわしいサイトやおすすめの書籍がありましたら、是非とも教えてください。
回答: bcc32のwinsonk.hをみたら #define s_addr s_un.s_addr のようになっていました。 a.s_un.s_addr って打つのが面倒くさいってことでしょうね。