首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是sa_family_t?

什么是sa_family_t?
EN

Stack Overflow用户
提问于 2012-08-12 17:03:43
回答 1查看 16.8K关注 0票数 4

我正在跟踪Beej网络编程指南,我使用的是VC++ 2010,但是当我将结构粘贴到我的程序中时,其中一些类型会显示为不正确的标识符。例如:

u_int32_t就是这样提出的,经过一番搜索,我发现这些都是1999年前后C语言中的老类型。我本可以包括stdint.h,但这需要我记住它们的意思。相反,我使用了标准的int( 32位长(4字节)),而对于64位长(8字节)的标准int,我使用了long long int

无论如何,我正在缩小到我的上一个语法错误,它说sa_family_t是一个无效的标识符。我不知道它应该是什么,搜索什么也找不到。这是我的问题,我不知道应该为类型标识符指定什么。

另一件困扰我的事情是:char __ss_pad1[_SS_PAD1SIZE];SS_PAD1SIZE,那个红色的东西也是无效的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-12 17:21:03

T应该是一个无符号整数。的头文件不符合这个标准。H将sockaddr结构定义如下:

代码语言:javascript
复制
struct sockaddr {
        u_short sa_family;              /* address family */
        char    sa_data[14];            /* up to 14 bytes of direct address */
};

因此,要编译您的代码,您需要自己动手编写sa_family_t。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11924068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档