一个ipv4地址可用一个4字节的无符号整数来表示。下述setbyte(ip,idx,v)函数负责将指针ip所指向的ip地址的第idx个字节修改为v,其中,idx取值0到3。请实现该函数,使得下述程序可以正常运行。 该程序通过4次调用该函数将一个ip地址设置为192.168.0.1,然后将整个ip地址按通常格式输出。
时间: 2023-06-05 22:47:04 浏览: 660
IP地址拆分成四个字节
5星 · 资源好评率100%
实现代码如下:
#include <stdio.h>
void setbyte(unsigned char *ip, int idx, unsigned char v) {
ip[idx] = v;
}
int main() {
unsigned char ip[4] = {0};
setbyte(ip, 0, 192);
setbyte(ip, 1, 168);
setbyte(ip, 2, 0);
setbyte(ip, 3, 1);
printf("%d.%d.%d.%d\n", ip[0], ip[1], ip[2], ip[3]);
return 0;
}
输出结果为:192.168.0.1
阅读全文