天天看点

网络编程API套接字函数介绍

套接字函数介绍

socket函数,用于创建套接字

SOCKET socket(
	int af,          //指定协议簇,通常为AF_INET即IPv4协议
	int type,		 //套接字类型,SOCK_STREAM(TCP)、SOCK_DGRAM(UDP)、RAW
	int protocol	 //IPPROTO_*
);
           

bind函数,用来绑定套接字到指定地址

int bind(
	SOCKET  s,                      //套接字句柄
	const struct sockaddr* name,	//指向本地地址结构
	int   namelen					//地址结构大小
);
           

connect函数,用来连接远程服务器

int connect(
	SOCKET s,
	const struct sockaddr* name,
	int  namelen
);
           

listen函数,监听远程连接

int listen(
	SOCKET  s,
	int      backlog    //指定连接队列大小
);
           

accept函数,用来接收客户端连接

int accept(
	SOCKET s,
	struct sockaddr* name,
	int  namelen
);
           

send函数,用来在已经建立连接的套接字上发送数据

int send(
	SOCKET  s,
	const char* buf,	//指向待发送数据的缓冲区
	int len,			//数据长度
	int flags			//指定调用方式,一般设置为0
);
           

send函数,用来向指定地址发送数据

int sendto(
	SOCKET  s,
	const char* buf,	//指向待发送数据的缓冲区
	int len,			//数据长度
	int flags			//指定调用方式,一般设置为0
	const struct sockaddr* to,  //指向目标地址结构
	int tolen        			//地址结构长度
);
           

recv函数,用来在已经建立连接的套接字上接收数据

int recv(
	SOCKET  s,
	char* buf,	//指向待接收数据的缓冲区
	int len,			//缓冲区长度
	int flags			//指定调用方式,一般设置为0
);
           

recvfrom函数,用来在已经建立连接的套接字上接收数据

int recv(
	SOCKET  s,
	char* buf,	//指向待发送数据的缓冲区
	int len,			//数据长度
	int flags			//指定调用方式,一般设置为0
	struct sockaddr* from,  //指向目标地址结构
	int tolen        			//地址结构长度
);