在进行套接字编程时,人们总是这样命名addrinfo结构:

struct addrinfo hints;
// get ready to connect
status = getaddrinfo("www.example.net", "3490", &hints, &servinfo);

我想知道它代表什么,以便更好地理解该结构。

提前致谢。

感谢您的回答。
也许我不清楚:

我想知道变量名“hints”是否为某些单词的缩写?或者,如果“提示”一词意味着仅提供一些地址信息,而让getaddrinfo()函数填写其余信息?

最佳答案

FreeBSD man page:



之所以称为“提示”,是因为它可以用来提供提示(提示);可能有用但可以忽略的建议。这表明了诸如调用者想要的协议(protocol)家族(例如IPv4与IPv6),套接字类型(数据报与straming),什么协议(protocol)(TCP与UDP)之类的东西。您可以将NULL传入hints,从而表示您不在乎返回的协议(protocol)族,套接字类型或协议(protocol)。

10-08 00:35