string convert(char* cur, int size) {
char byte[10] = {0};
memcpy(byte, cur - size, size);
unsigned int value = atoi(byte);
char final_value[9] = {0};
for (int i = 0; i < 8; i++) {
final_value[8 - i -1] = '0' + value % 2 - 0;
value = value / 2;
}
string ret = final_value;
return ret;
}
string atob(char* p) {
string ret = "";
if (NULL == p) return "";
int length = 0;
while ('\0' != *p) {
if ('.' == *p) {
ret += convert(p, length);
length = 0;
} else {
length++;
}
p++;
}
ret += convert(p, length);
return ret;
}
void main()
{
string final_bin = atob("192.168.6.16");
}将IP地址转换为二进制表示
最新推荐文章于 2024-03-13 14:17:40 发布
本文介绍了一种将十进制IP地址转换为二进制形式的算法实现。通过两个核心函数:stringconvert()用于单个数值到二进制字符串的转换;atob()则完成整个IP地址的转换,包括处理点分隔符。该算法适用于网络编程中IP地址的二进制表示需求。

8837

被折叠的 条评论
为什么被折叠?



