Socket编程之六类函数

考试复习期间匆忙整理,如有错误请在评论中指出。

第一类:套接字函数

功能:完成套接字的创建、关闭以及对套接字的命名和名字获取。

函数名功能
SOCKET socket (int af, int type, int protocol)创建套接字
int bind (SOCKET s, const struct sockaddr FAR *name, int namelen)给套接字绑定本地地址和端口
int closesocke (SOCKET s)关闭套接字
getpeername()获取指定套接字连接的对等方的地址和端口号
getsockname()获取指定套接字关联的地址和端口号

第二类:网络连接函数

功能:完成网络连接的建立与关闭。

函数名功能
int listen ( SOCKET s, int backlog )在指定套接字上监听外来连接
int connect ( SOCKET s, const struct sockaddr FAR* name, int namelen )在指定套接字上与远程主机建立连接
SOCKET accept ( SOCKET s, struct sockaddr FAR* addr, int FAR* addrlen )确认外来连接,并将它与一个立即建立起来的数据套接字联系起来
int shutdown (SOCKET s,int how)关闭全双工连接中一个方向上的连接

第三类:数据传输函数

功能:完成数据的发送与接收。

函数名功能
int send ( SOCKET s, const char FAR* buf, int len, int flags)使用面向连接的套接字发送数据
int recv ( SOCKET s, char FAR* buf, int len, int flags)从一个面向连接的套接字上接收数据
int sendto (SOCKET s, const char* buf, int len, int flags, const sockaddr* to, int tolen)使用面向连接或无连接的套接字发送数据
int recvfrom (SOCKET s, char* buf, int len, int flags, sockaddr* from, int* fromlen)从一个面向连接或无连接的套接字上接收数据

第四类:字节顺序转换函数

功能:完成主机字节顺序和网络字节顺序之间的转换

函数名功能
htonl()将一个32位整数从主机字节序转换为网络字节序
htons()将一个16位整数从主机字节序转换为网络字节序
ntohl()将一个32位整数从网络字节序转换为主机字节序
ntohs()将一个16位整数从网络字节序转换为主机字节序

第五类:地址转换函数

功能:完成IP地址的点分十进制形式和二进制整数形式之间的转换。

函数名功能
u_long inet_addr(const char FAR *cp)将一个点分十进制的字符串ip转换成整数形式的
char* inet_ntoa ( struct in_addr in)将整数表示的ip转换成点分十进制的字符串的形式

第六类:套接字控制函数

功能:设置/获取套接字的选项;控制/检测套接字的工作状态。

函数名功能
getsockopt()获取与指定套接字相关的选项
setsockopt()设置与指定套接字相关的选项
ioctlsocket()为套接字提供控制
select()获得一组套接字的状态,以实现异步I/O操作

推荐文档:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值