SOCKET_ERROR
http://www.cnblogs.com/onroad/archive/2009/08/10/1543164.html
INVALID_SOCKET
INVALID_SOCKET的值不是-1,原因参考basetsd.h和WinSock2.h:
typedef _W64 unsigned int UINT_PTR, *PUINT_PTR;
typedef UINT_PTR
#define INVALID_SOCKET
(~0)的值为-1;
(SOCKET)(~0)的值为:十六进制0xFFFFFFFF(十进制4294967295)。
WSAGetLastError()
http://baike.baidu.com/link?url=SsTlzJ16os_qifhAfsEaQabL5X_AJqtvrs-HRizK_jX4T2_-Q9TwFD_tXuhuhlPU