所以,我正在阅读Beej的网络编程指南,他使用了这个功能:
void *get_in_addr(struct sockaddr *sa)
{
if (sa->sa_family == AF_INET) {
return &(((struct sockaddr_in*)sa)->sin_addr);
}
所以,我得到它的一般做法。我无法理解的是函数声明中的*究竟是什么。此外,此函数似乎返回一个内存位置,但它的空白。怎么回事?
答案 0 :(得分:4)
'*'表示函数返回void *。这是一个可以强制转换为任何其他指针的指针。