您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为什么在调用bind()时将sockaddr_in转换为sockaddr?

为什么在调用bind()时将sockaddr_in转换为sockaddr?

不,不只是惯例。

sockaddr是用于任何类型的套接字操作的通用描述符,而是sockaddr_in特定于基于IP的通信的结构(IIRC,“ in”代表“ InterNet”)。据我所知,这是一种“多态性”:该bind()函数假装采用struct sockaddr *,但是实际上,它将假定传入了适当的结构类型;即,与您给它作为第一个参数的套接字类型相对应的套接字。

其他 2022/1/1 18:19:12 有563人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶