服务端:
1 WSAStartup(版本,本机的最高版本)
WSAStartup函数的第一个参数是加载WinSock库的版本,WSAStartup函数的第二个参数设置要使用的WinSock库的版本,并且如果成功初始化,WSAStartup将返回0。 但是,如果在WSAStartup函数的第一个参数中随意设置版本号,WSAStartup也会返回0。
如果为WSAStartup函数的第一个参数设置的版本号不存在,则会自动使用WinSock库中的最低版本1.1。
2socket(协议方案,数据流/快形式,附加协议)
套接字成功
INVALID_SOCKET错误
套接字返回的值是文件描述符,套接字类型本身也被定义为int。 既然是文件描述符,在系统中将作为文件处理。 0、1、2分别表示标准输入、标准输出、标准错误。 因此,所有其他打开的文件描述符都大于2,如果出现错误,则返回-1。 其中INVALID_SOCKET也被定义为-1
; padding-top:0px; padding-bottom:0px; background-color:rgb(245,250,254)"> 3 bind(socket返回的socket,定义的SOCKADDR_IN 结构体,<-这个的大小)0 成功
SOCKET_ERROR 错误(<0)可用WSAGETLASTERROR 函数取错误码
4 listen(socket返回的socket,队列长度)
0 成功
SOCKET_ERROR 错误(<0)可用WSAGETLASTERROR 函数取错误码
5 accept (socket返回的socket,指向的定义的SOCKADDR_IN 结构体指针,指针的大小)
0 成功
SOCKET_ERROR 错误(<0)可用WSAGETLASTERROR 函数取错误码
6 recv/recvfrom (socket返回的socket,要放在的BUF,BUF长度,接收方式)
>0 返回收到的字节数目
=0断开连接
<0错误
7 send/sendto(socket返回的socket,要发的,发的长度,接收方式)
>0 返回发的字节数目
=0断开连接
<0错误
客户端:
connect (socket返回的socket,定义的SOCKADDR_IN 结构体,<-这个的大小)
阻塞时:
0 成功
SOCKET_ERROR 错误(<0)可用WSAGETLASTERROR 函数取错误码
非阻塞时:不能立即返回值,连接 返回SOCKET_ERROR
WSAGETLASTERROR 函数返回WSAEWOULDBLOCK