利用C语言编写将十六进制IP地址转换为点分十进制的代码
时间: 2023-02-09 19:36:22 浏览: 236
进制转换_C语言_
可以使用C语言的位运算和字符串格式化函数来实现十六进制IP地址转换为点分十进制的代码。
```c
#include <stdio.h>
int main() {
char hex_ip[] = "C0A80101"; // 十六进制IP地址
unsigned int decimal_ip = 0; // 点分十进制IP地址
sscanf(hex_ip, "%x", &decimal_ip); // 将十六进制字符串转换为整数
printf("%u.%u.%u.%u\n", (decimal_ip & 0xff000000) >> 24, (decimal_ip & 0x00ff0000) >> 16, (decimal_ip & 0x0000ff00) >> 8, (decimal_ip & 0x000000ff));
return 0;
}
```
这段代码使用 sscanf 函数将十六进制IP地址字符串转换为无符号整数,然后使用位运算将整数转换为四个十进制数字,最后使用 printf 函数输出点分十进制IP地址。
阅读全文