スレを勃てるまでもないC/C++の質問はここで 5at TECHスレを勃てるまでもないC/C++の質問はここで 5 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト554:デフォルトの名無しさん 09/01/04 01:20:44 >>550 ああ、そういうことか。 sockaddr_inはsockaddrをIPv4に特化したもの。 sockaddr_inを使うのはIPv4だけだ。 connect()はIPv4以外でも使われる。 http://www.linux.or.jp/JM/html/LDP_man-pages/man2/socket.2.html AF_INETの他に AF_APPLETALKとかあるだろ。 555:536 09/01/04 01:26:58 >>554 socketでAF_INETを指定しているのですが、 この場合だとIPv4でconnectしてるということでは? 556:デフォルトの名無しさん 09/01/04 01:34:20 >>555 そう。 sockaddr_inを使うのはsockaddrを使うより便利だから。 IPv4を使う場合でもsockaddrにアドレスを設定してもいいよ。でも面倒だよ。 ともかく、connect()が必要とするのはsockaddr_inではなくsockaddrなの。 /usr/include/sys/socket.h にstruct sockaddrとstruct sockaddr_inの定義があるから見比べてみてよ。 557:デフォルトの名無しさん 09/01/04 01:36:55 >>550 sockaddrとしてもsa_familyが読み取れる。 そこがAF_INETならsockaddr_inにキャストしてアドレスを読み取るという風になっている。 ほかのAF_*にも対応するsockaddr_*が存在しうるという仕組み。 >>549 そういうことなんだろうけど、IPv6を収めるには小さすぎたのが惜しかった。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch