0
我有一個網絡地址,例如 - 192.168.74.0/24。嘗試使用getaddrinfo獲取網絡地址轉換,似乎不起作用。這裏的名字是192.168.74.0/24。 getaddrindo的返回值是-2。適用於沒有前綴的ipv4地址。getaddrinfo不適用於網絡地址
static const struct addrinfo hint = {
.ai_family = AF_UNSPEC,
.ai_flags = AI_NUMERICHOST
};
struct addrinfo *ai;
int ret;
ret = getaddrinfo(name, NULL, &hint, &ai);
if (ret) {
printf("cannot parse '%s'", name);
return false;
}
192.168.74.0/24不是地址:它指定一個網絡或一個地址範圍。你期望'getaddrinfo'返回什麼? – Thanatos