0

我尝试在 *ai(struct addrinfo) 中存储 ipv4 地址

struct addrinfo *ai;
char *p = (char *)(void *)(ai->ai_addr);

memcpy(p + afd->a_off, "d83adcca", (size_t)afd->a_addrlen); // "d83adcca ipv4 address is hex data - not correct.."

所以,我需要验证我是否被正确分配。我使用这段代码:

struct sockaddr_in ipv4 = (struct sockaddr_in *)ai->ai_addr;
inet_ntop(AF_INET, &(ipv4->sin_addr), ipAddress, INET_ADDRSTRLEN);

但是,ipAddress 和 ai->ai_addr 不匹配!!如果您知道如何分配这些结构,请帮助我。谢谢。

4

0 回答 0