1

我正在使用c++和winsock。我需要长时间获取本地机器的IP地址。有什么简单的方法吗?

4

1 回答 1

2

好吧,如果它是 IPv4 地址,您可以使用二进制操作,因为 long 有 4 个字节

void ipLong2String(int ipLong, char &ipStr) {
    ipStr.clear();
    ipStr << ((ipLong & 0xF000) >> 12) << "." 
            << ((ipLong & 0x0F00) >> 8) << "." 
            << ((ipLong & 0x00F0) >> 04 << "." 
            << (ipLong & 0x000F);
}

使用 IPv6 是不可能的。

于 2013-08-23T09:15:56.880 回答