struct hostent *hostName;
struct in_addr ipv4addr;
inet_pton(AF_INET, inet_ntoa(client.sin_addr), &ipv4addr);
hostName = gethostbyaddr(&ipv4addr, sizeof(ipv4addr), AF_INET);
printf("Host name: %s\n", hostName->h_name);
最後の行でセグメンテーション違反になります。hostent の適切な使用法を調べたところ、msdn のドキュメントでは、まさにこのように使用されていることが示されています。セグメンテーション違反の原因は何ですか?