1,WSAStartup函数。
函数原型 int WSAStartup( WORD wVersionRequested, LPWSADATA lpWSAData);
第一个参数表示用来指定准备加载的Winsock库版本。第二个参数表示一个返回值,指向WSADATA结构的指针。库版本相关信息就在这个结构里面。示例程序可以查阅MSDN。函数用完后需调用WSACleanUp释放资源。
2,socket函数
函数原型 SOCKET socket(int af, int type, int protocol)
第一个参数指定地址族,对于基于TCP/IP协议的套间字,它只能是AF_INET(也可以写成PF_INET),第二个参数指定SOCKET类型,有二种,流式套间字SOCK_STREAM, 数据报套间字SOCK_DGRAM,tcp用第一种,udp用第二种。
3,bind函数
函数原型 int bind(SOCKET s, const struct sockaddr FAR * name, int namelen);
第一个参数指定要绑定的套间字,第二个参数指定该套间子的本地地址信息。第三个用于指定该地址结构的长度。
4,inet_addr和inet_ntoa
函数原型分别为
ussigned long inet_addr(const char FAR *cp);
char FAR* inet_ntoa(struct in_addr in);
第一个函数接受一个ip地址,如10.64.123.2 返回一个适合分配给S_addr的ulong类型的数值。
inet_ntoa完成相反的转换,接受一个in_addr转换为ip地址的字符串
5,listen函数
函数原型
int listen(SOCKET s, int backlog);
第一个参数是套间字 第二个是等待队列的最大长度
6,accept函数
SOCKET accept(SOCKET s, struct sockaddr FAR* addr, int flags)
接受客户端发送的连接请求,具体见msdn
7,send函数
发送数据,具体见msdn
8,recv函数
接受数据,具体见msdn
9,connect函数
函数原型
int connect(SOCKET s, const struct sockaddr FAR* name,int namelen);
第一个参数是即将在其上建立连接的那个套间字,第二个是设定连接服务器端的地址信息,第三个是服务器端地址的长度。
10,recvfrom
作用类似于recv 具体见msdn
11,sendto
作用类似于send
12 htons与htnol函数
这二个函数可以讲一个u_short或u_long转换为ICP/IP字节顺序。