在进行套接字编程时,人们总是将addrinfo结构命名为:
struct addrinfo hints; // get ready to connect status = getaddrinfo("www.example.net", "3490", &hints, &servinfo);
我想知道它对于更好地理解是什么意思.
提前致谢.
谢谢你的回答.也许我没有让我清楚.
但我想知道变量名称"hints"是否是某些单词的缩写?或者它只是单词"提示"意味着它只提供一些地址信息并让getaddrinfo()函数填写其余的?
从FreeBSD手册页:
hints
是一个结构addrinfo的可选指针,由... 定义.此结构可用于提供有关调用者支持或希望使用的套接字类型的提示.
它被称为"提示",因为它可以用来提供提示(在提示的意义上;提示可能有用但可以忽略).这表明东西像什么协议族(IPv4的IPv6的对比,例如)呼叫者想要的,什么插槽类型(数据报与straming),什么协议(TCP UDP对比)等,您可以通过NULL
在hints
,以此指示你不关心你得到的协议族,套接字类型或协议.