short sin_family;
unsigned short sin_port;
struct in_addr sin_addr;
char sin_zero[8];
};
6)listen 设定 socket 为监听状态
函数原型:int listen(
SOCKET s, //进行监听的 socket
int backlog //客户端可以连接的请求个数
);
7)accept 接受一个 socket 的连接请求,同时返回一个新的 socket,新的 socket 用来在服务
器与客户端之间传递和接收信息。
函数原型:SOCKET accept(
SOCKET s, //处于监听状态的 socket
struct sockaddr FAR* addr, //将要接受地址的 sockaddr 指针
int FAR* addrlen //地址的长度
);
8)connect 连接客户端的 socket 到指定的网络服务器。连接成功后,客户端用此 socket 与服
务器通信。
函数原型:int connect(
SOCKET s, //将要连接的 socket
const struct sockaddr FAR* name, //目标 socket 地址
int namelen //地址结构 sizeof
);
9)recv 用于接收已经建立连接的 socket 数据信息
函数原型:int recv(
SOCKET s,
char FAR* buf, //接收数据缓冲区
int len ,//缓冲区长度
int flags //有 MSG_PEEK 和 MSG_OOB
);
返回值:接收到的字节数
10)send 对已经建立连接的 socket 发送数据信息
函数原型:int send(
SOCKET s,
char FAR* buf, //发送数据缓冲区
int len ,//缓冲区长度
int flags //有 MSG_PEEK 和 MSG_OOB
);
返回值:发送的字节数
11)WSAAsyncSelect 要求 socket 在有事件发生时通知使用者,本函数将套接口设置成为非
阻塞方式。
函数原型:int WSAAsyncSelect(
SOCKET s,