我正在将一些 Windows 代码移植到 Mac。我遇到了一些使用该类型的代码,in_addr
并在此处找到了 Windows 实现的文档:http: //msdn.microsoft.com/en-us/library/windows/desktop/ms738571%28v=vs.85%29。 aspx
具体来说,我遇到的问题是代码试图访问S_un
in_addr 的属性,编译器(CLang)抱怨该属性不存在。查看 Mac 实现的定义,我得到了这个(in usr/include/netinet/in.h
):
struct in_addr {
in_addr_t s_addr;
};
...并in_addr_t
定义如下(in usr/include/sys/types.h
):
typedef __uint32_t in_addr_t;
有谁知道一个很好的解决方法,或者 Mac 上是否存在与 Windows 实现更密切相关的 IPv4 地址表示?