gpt4 book ai didi

c - inet_ntoa 问题

转载 作者:太空宇宙 更新时间:2023-11-04 00:33:34 26 4
gpt4 key购买 nike

我正在声明以下变量

unsigned long   dstAddr;
unsigned long gateWay;
unsigned long mask;

这些变量包含网络字节顺序的 IP 地址。因此,当我尝试使用 inet_ntoa 函数为掩码变量打印点符号时,有时它会打印奇怪的值。下面的代码在一个 while 循环中......循环了 n 次。

printf("%s\t%s\t%s\t",inet_ntoa(dstAddr),inet_ntoa(gateWay),inet_ntoa(mask));

192.168.122.0 0.0.0.0 0.255.255.255

但应该是

  192.168.122.0         0.0.0.0    255.255.255.0

我打印了变量的十六进制值,它显示..

007aa8c0    00000000      ffffff00  

这是因为 inet_ntoa 吗??

实际上,我试图通过 NETLINKS 从内核中的 254 路由表中获取声明变量的值。我想我仍然应该使用 inet_ntoa 函数将值转换为点符号.. ??

最佳答案

唯一有意义的是,您关于所有地址都按网络字节顺序排列的假设是不正确的。

关于c - inet_ntoa 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2513550/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com