SOCKET socket( int af, int type, int protocol );
描述:?
? ? ?创建一个套接口
参数:?
? ? ?af: 地址簇,常见地址簇,AF_INET
? ? ?type与protocol是相关联的,type规定大类别,protocol是这类中具体的协议,常用的如下图所示
? ? ?
?
返回值:?
? ? ?成功,返回SOCKET描述符
? ? ?失败,返回INVALID_SOCKET,调用WSAGetLastError()得到错误码
?
?
int bind( SOCKET s, const struct sockaddr FAR * name, int namelen );
描述:?
? ? ?给指定SOCKET绑定一个地址,绑定结果与地址的关系如下所示
?
参数:?
? ? ?s: 需要绑定地址的SOCKET
? ? ?name: 通用地址结构
? ? ?namelen: name结构体的长度
? ? ?
返回值:?
? ? ?成功,返回0
? ? ?失败,返回SOCKET_ERROR,调用WSAGetLastError()得到错误码
?
int sendto( SOCKET s, const char FAR * buf, int len, int flags, const struct sockaddr FAR * to, int tolen );
描述:?
? ? ?把缓冲区的数据发送到to指定的位置上
参数:?
? ? ?s: 发送数据的SOCKET?
? ? ?buf: 发送数据缓冲区
? ? ?len: 缓冲区长度
? ? ?flags: 调用方式,一般为0
? ? ?to: 目的地址
? ? ?tolen:to结构体的长度
? ? ?
返回值:?
? ? ?成功,返回发送数据的字节长度,小于等于len
? ? ?失败,返回SOCKET_ERROR,调用WSAGetLastError()得到错误码
?
int recvfrom( SOCKET s, char FAR * buf, int len, int flags, struct sockaddr FAR * from, int FAR * fromlen );
描述:?
? ? ?把缓冲区的数据发送到to指定的位置上
参数:?
? ? ?s: 接收数据的SOCKET?
? ? ?buf: 接收数据缓冲区
? ? ?len: 缓冲区长度
? ? ?flags: 调用方式,一般为0
? ? ?from: 发送数据的地址,该变量为返回值
? ? ?tolen:from结构体的长度,该变量为返回值
? ? ?
返回值:?
? ? ?成功,返回接收数据的字节长度,小于等于len
? ? ?失败,返回SOCKET_ERROR,调用WSAGetLastError()得到错误码
?