为什么sockaddr_in和sockaddr互不兼容?

时间:2019-02-21 06:56:44

标签: c sockaddr-in sockaddr

我尝试在* 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不匹配!! 如果您知道如何分配这些结构,请帮助我。 谢谢。

0 个答案:

没有答案