ZBLOG

inet_ntop 例子

以下是一个使用inet_ntop函数将IPv4和IPv6地址转换为字符串表示形式的示例:

#include <stdio.h>
#include <arpa/inet.h>

int main() {
    char ipv4_addr[INET_ADDRSTRLEN];
    char ipv6_addr[INET6_ADDRSTRLEN];

    // Convert IPv4 address to string
    struct in_addr ipv4;
    inet_pton(AF_INET, "192.168.0.1", &ipv4);
    inet_ntop(AF_INET, &ipv4, ipv4_addr, INET_ADDRSTRLEN);
    printf("IPv4 address: %s\n", ipv4_addr);

    // Convert IPv6 address to string
    struct in6_addr ipv6;
    inet_pton(AF_INET6, "2001:db8::1", &ipv6);
    inet_ntop(AF_INET6, &ipv6, ipv6_addr, INET6_ADDRSTRLEN);
    printf("IPv6 address: %s\n", ipv6_addr);

    return 0;
}

在这个例子中,我们首先声明了两个缓冲区变量来存储转换后的IP地址字符串。接下来,我们使用inet_pton函数将“192.168.0.1”(对于IPv4)和“2001:db8::1”(对于IPv6)的二进制地址转换为网络字节序,并将其存储在in_addr或in6_addr结构体中。最后,我们使用inet_ntop函数将这些结构体转换为字符串格式,并打印出结果。

输出结果应该类似于:

IPv4 address: 192.168.0.1
IPv6 address: 2001:db8::1

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://sdn.0voice.com/?id=738

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?