0

我有:

192.168.1.1

我怎样才能转换它?

我尝试使用 sscanf 拆分 IP 地址,例如:

sscanf(hostaddress,"%d.%d.%d.%d", &d1, &d2, &d3, &d4);
4

2 回答 2

2

我有一个 IP 地址 [...] 如何将其转换为长地址?

您正在寻找功能inet_pton(3)

unsigned char buf[sizeof(struct in_addr)]
rc = inet_pton(AF_INET, "192.168.1.1", buf);

并且rc应该是 1 表示成功。返回码 0 或 -1 表示错误。

于 2013-04-18T04:29:24.583 回答
1

您可以使用inet_addr

unsigned long addr = inet_addr("192.168.1.1");
于 2013-04-18T04:30:33.103 回答