gpt4 book ai didi

c - 初始化一个 in_addr_t 而不进行文本解析

转载 作者:行者123 更新时间:2023-11-30 15:55:39 25 4
gpt4 key购买 nike

所以基本上我想用特定地址初始化 in_addr_t at 并从文本中解析它是没有意义的。这样做很诱人:

in_addr_t foo = network_byte_order(127 << 24 | 0 << 16 | 0 << 8 | 99 << 0};

对于 127.0.0.99,然后将其包装在宏中,以便它可以方便地用于任何地址...但是我想首先检查是否有人知道任何现有的宏,最好是“官方”的?

最佳答案

目前没有适用于此目的的宏。查看这个示例,了解如何在 netinet/in.h 中定义 INADDR_LOOPBACK。它只是一个十六进制常量,比您的方法更简单:

# define INADDR_LOOPBACK        ((in_addr_t) 0x7f000001) /* Inet 127.0.0.1.  */

所以你的方法没问题。

您应该使用标准的 htonl() 代替 network_byte_order 函数。

关于c - 初始化一个 in_addr_t 而不进行文本解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11909224/

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