Tag: ip address

整数到IP地址 – C.

我正在准备一个测验,我怀疑我可能会负责实现这样的function。 基本上,给定一个网络符号的IP地址,我们如何从一个32位整数到它的点分十进制表示法(如155.247.182.83)…? 显然我们也不能使用任何类型的inet函数……我很难过!

从字符串中获取IPv4地址的最快方法

我有以下代码,比inet_addr快约7倍。 我想知道是否有办法改进这个以使其更快或者如果存在更快的替代方案。 这段代码要求提供一个有效的空终止IPv4地址,没有空格,在我的情况下总是这样,所以我针对这种情况进行了优化。 通常你会有更多的错误检查,但如果有办法使更快或更快的替代存在,我会非常感激。 UINT32 GetIP(const char *p) { UINT32 dwIP=0,dwIP_Part=0; while(true) { if(p[0] == 0) { dwIP = (dwIP << 8) | dwIP_Part; break; } if(p[0]=='.') { dwIP = (dwIP << 8) | dwIP_Part; dwIP_Part = 0; p++; } dwIP_Part = (dwIP_Part*10)+(p[0]-'0'); p++; } return dwIP; }