2010/11/10

[C]sockaddr_in構造体とは

昨日に引き続き、Reachabilityのアプリを読解しているのですが、ソース内にどこにも存在しないsockaddr_in構造体を発見しました。

調べたところ、

Cの宣言
struct sockaddr_in {
short sin_family;
u_short sin_port;
struct in_addr sin_addr;
char sin_zero[8];
};

メンバ
sin_family
アドレスファミリー(通常はAF_INET(2)を指定)
sin_port
ポート番号(htonsでネットワークバイトオーダーに変換しておく)
sin_addr
IPアドレスを格納したin_addr構造体
sin_zero
0で初期化しておく

via:sockaddr_in構造体

あまりにも綺麗にまとまりすぎていたので、ほぼ全文引用させていただきました。
構造体の中に、構造体が定義されていて、調査を行うとさらにめんどくさそうなので、一旦ここでストップさせます。

しかし、本当に綺麗にまとまっていたなー。このように見やすいブログを書いていきたいものであると、ふと思ってしまった。


0 コメント:

コメントを投稿