这是一个我没有完全理解的语句。了解一个C socket指令
serv_addr.sin_addr.s_addr = ((struct in_addr*)(hp->h_addr)) -> s_addr;
这是否意味着:
- 我把
hp
成hp->h_addr
- 这一切
struct in_addr*
类型的h_addr
- 类型转换已经被复制到
s_addr
因此serv_addr.sin_addr.s_addr包含选择主机的主机名和ip地址。
这是正确的吗?
(PS:惠普是struct hostent *hp ; hp=gethostbyname(argv[1]);
)
'gethostbyname()'已被弃用,您可以考虑使用'getaddrinfo()'来代替。 – alk
我知道,我读过这个,但我需要一个简单的实现,所以我会在(近)未来:)学习getaddrinfo(它更复杂):) – polslinux