socket函数返回值分析
来源:互联网 发布:复制别人店铺的软件 编辑:程序博客网 时间:2024/05/17 08:34
服务端:
1 WSAStartup(版本,本机的最高版本)
WSAStartup函数的第一个参数是加载WinSock库的版本,WSAStartup函数的第二个参数中设置使用的WinSock库的版本,当正确初始化时,WSAStartup会返回0。但我在WSAStartup函数的第一个参数中胡乱设置了一个版本号,WSAStartup仍然会返回0。
如果在WSAStartup函数第一个参数中设置的版本号不存在,那么会自动使用WinSock库中最低的版本1.1。
2socket(协议方案,数据流/快形式,附加协议)
socket 成功
INVALID_SOCKET 错误
socket返回的值是一个文件描述符,SOCKET类型本身也是定义为int的,既然是文件描述符,那么在系统中都当作是文件来对待的,0,1,2分别表示标准输入、标准输出、标准错误。所以其他打开的文件描述符都会大于2, 错误时就返回 -1. 这里INVALID_SOCKET 也被定义为 -1
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
- socket函数返回值分析
- SOCKET 常用函数的返回值分析
- SOCKET 常用函数的返回值分析
- SOCKET 常用函数的返回值分析
- SOCKET 常用函数的返回值分析
- Linux socket 读写接口返回值分析
- Socket一些函数相关的返回值
- socket编程recv函数返回值说明
- Socket一些函数相关的返回值
- 对于中断函数返回值的分析
- main()函数返回值的分析
- 分析函数传参及返回值
- system函数返回值测试分析
- 对于中断函数返回值的分析
- 临时对象作为函数返回值返回的分析
- 函数返回指针分析
- socket函数conect返回值为115,如何解决呢?
- Linux下tcp协议socket的recv函数返回时机分析(粘包)
- android应用:startActivityForResult使用实例
- opencv中图像基础(大小,深度,通道)
- POJ 2653 线段位置关系判断模板
- 网络攻击技术(二)——Cross-site scripting
- Servlet精华
- socket函数返回值分析
- epon架构
- 网络攻击技术(三)——Denial Of Service
- Kafka 几个重要的配置总结
- 常用技巧
- oracle字符集结构
- NSMutableAttributedString 自定义文字内容的样式 间距,对其 方向 间隔之类
- 一致性哈希算法与Java实现(转载)
- 从源码角度分析view的draw过程