使用 socket API 开发通信程序中的客户端程序和服务器程序时,各需要哪些不同函数

解释connect()、bind()等函数中structsockaddr*addr参数各个部分的含义,并用具体的数据举例说明。... 解释 connect()、bind()等函数中struct sockaddr *addr 参数各个部分的含义,并用具体的数据举例说明。 展开
 我来答
百度网友295f3a590
2009-08-24 · 超过29用户采纳过TA的回答
知道答主
回答量:87
采纳率:0%
帮助的人:87.6万
展开全部
*addr实际指向的是一个sockaddr_in的结构体,这个结构体如下
struct sockaddr_in{
short sin_family;
unsigned short sin_port;
struct in_addr sin_addr;
char sin_zero[8];
};
sin_family是指选取可用网络的类型
sin_port,这个指端口,在bind中就是服务器要把自己的哪个端口开放用于接收数据,在connect中就是指出客户端要连接服务器的哪个端口,用于通讯。
sin_addr就是IP地址,bind的时候,这个就是包含本机的IP地址一个结构体,connect的时候就是包含服务器的IP地址一种结构体
其中ip地址就是sin_addr.S_un.S_addr。其它参数没用到。
最后一个参数我没用过,不知道什么意思。
如服务器绑定前的参考设定
addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
addrSrv.sin_family=AF_INET;
addrSrv.sin_port=htons(6100);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式