1、WSAStartup函数
用于初始化Winsock
[声明]
int WSAStarup
(WORD wVersionRequested,LPWSADATA
lpWSAData);
[参数]
wVersionRequested - 要求使用Winsock的最低版本号
lpWSAData - Winsock的详细资料
[返回值]
当函数成功调用时返回0
失败时返回非0的值
2、socket函数
用于生成socket(soket Descrīptor)
[声明]
SOCKET socket(int af,int type,int protocol);
[参数]
af - 地址家族(通常使用:AF_INET)
type - socket的种类
SOCK_STREAM : 用于TCP协议
SOCK_DGRAM : 用于UDP协议
protocol - 所使用的协议
[返回值]
当函数成功调用时返回一个新的SOCKET(Socket Descrīptor)
失败时返回INVALID_SOCKET.
3、inet_addr函数
把好象"xxx.xxx.xxx.xxx"的10进制的IP地址转换为32位整数表示方法
[声明]
unsigned long inet_addr ( const char FAR *cp );
[参数]
cp - 指向用"xxx.xxx.xxx.xxx"的10进制来表示的IP地址字符串的指针
[返回值]
当函数成功调用时返回用32位整数表示的IP地址(按网络字节排列顺序)
失败时返回INADDR_NONE.
4、gethostbyname函数
可以从主机名获取主机资料.
[声明]
struct hostent FAR * gethostbyname ( const char FAR *name );
[参数]
name - 指向主机名字符串的指针
[返回值]
当函数成功调用时返回主机信息
失败时返回NULL(空值)
5、Bind函数
指定本地IP地址所使用的端口号时候使用
[声明]
int bind ( SOCKET s , const struct sockaddr FAR *addr , int namelen
);
[参数]
s - 指向用Socket函数生成的Socket Descrīptor
addr - 指向Socket地址的指针
namelen - 该地址的长度.
[返回值]
当函数成功调用时返回0
调用失败时返回 SOCKET_ERROR
6、connect函数
用于与服务器建立连接,发出连接请求,必须在参数中指定服务器的IP地址和端口号
[声明]
int connect (SOCKET s , const struct sockaddr FAR *name , int
namelen );
[参数]
s - 指向用Socket函数生成的Socket Descrīptor
name - 指向服务器地址的指针
namelen - 该地址的长度.
[返回值]
当函数成功调用时返回0
调用失败时返回 SOCKET_ERROR
7、select函数
可以用于调查一个或多个SOCKET的状态.
[声明]
int select ( int nfds , fd_set FAR *readfds , fd_set FAR *writefds
, fd_set FAR *exceptfds , const struct tim FAR *timeout
);
[参数]
nfds - 在WINDOWS SOCKET API 中该参数可以忽略,通常赋予NILL值
readfds - 由于接受的SOCKET设备的指针
writefds - 用于发送数据的SOCKET设备的指针
exceptfds - 检查错误的状态
timeout - 超时设定
[返回值]
返回大于0的值时,表示与条件相符的SOCKET数
返回0表示超时
失败时返回SOCKET_ERROR
8、recv函数
利用Socket进行接受数据.
[声明]
int recv ( SOCKET s , char FAR *buf , int len , int flags );
[参数]
s - 指向用Socket函数生成的Socket Descrīptor
buf - 接受数据的缓冲区(数组)的指针
len - 缓冲区的大小
flag - 调用方式(MSG_PEEK 或 MSG_OOB)
[返回值]
成功时返回收到的字节数.
如果连接被中断则返回0
失败时返回 SOCKET_ERROR
9、sendto函数
利用Socket进行发送数据.
[声明]
int sendto ( SOCKET s , const char FAR *buf , int len , int flags ,
const struct sockaddr FAR *to , int token );
[参数]
s - 指向用Socket函数生成的Socket Descrīptor
buf - 接受数据的缓冲区(数组)的指针
len - 缓冲区的大小
flag - 调用方式(MSG_DONTROUTE , MSG_OOB)
to - 指向发送方SOCKET地址的指针
token - 发送方SOCKET地址的大小
[返回值]
成功时返回已经发送的字节数.
失败时返回SOCKET_ERROR
分享到:
相关推荐
本资源提供的`socket函数说明.docx`文档详细介绍了在Windows环境下,使用Microsoft开发工具进行Socket编程时的各种函数用法,这对于中文使用者来说是一个非常宝贵的参考资料。 首先,我们从基础开始,`socket()`...
### Socket编程核心函数详解 #### 1. accept(接受socket连接) `accept()`函数是用于接收客户端连接请求的关键函数,通常在服务器端编程中使用。它等待并接收来自客户端的连接请求,一旦接收到请求,它会创建一个新...
以下是对标题“socket函数[借鉴].pdf”所涉及的主要知识点的详细说明。 首先,`socket()`函数是创建一个socket句柄,它是进行网络通信的起点。它接收两个参数:协议族(如AF_INET用于IPv4,AF_INET6用于IPv6)和套...
参数说明如下: 1. `socket`:已创建并连接好的socket描述符。 2. `level`:指定要设置的选项层级,通常为`SOL_SOCKET`(表示套接字级别)或特定协议级别,如`IPPROTO_TCP`。 3. `option_name`:要设置的选项名称,...
**参数说明:** - **family**: 协议簇。主要支持以下几种类型: - `AF_INET`: IPv4协议簇。 - `AF_INET6`: IPv6协议簇。 - `AF_UNIX`: Unix域套接字。 - `AF_APPLETALK`: AppleTalk协议簇。 - `AF_X25`: X.25...
Socket函数集是网络编程中的核心部分,主要用于创建、管理和通信基于TCP/IP协议的网络连接。在Windows环境下,需要包含`<winsock2.h>`头文件,并链接`ws2_32.lib`库来使用这些函数。以下是对这些关键函数的详细解释...
**参数说明**: - `hostname`: RabbitMQ server所在的主机名。 - `portnumber`: RabbitMQ server监听的端口号,默认为5672。 该函数用于打开到RabbitMQ服务器的socket连接。通过提供主机名和端口号,此函数尝试...
#### 三、socket函数 **函数原型:** ```c SOCKET socket(int af, int type, int protocol); ``` **参数说明:** - `af`:指定使用的地址族,如AF_INET表示IPv4。 - `type`:指定Socket类型,如SOCK_STREAM表示...
**1.3 参数说明** - **s**: 已经通过 `bind()` 和 `listen()` 处理过的套接字。 - **addr**: 用于存储远程主机地址信息的结构体指针。 - **addrlen**: 指向一个整型变量的指针,用于存储 `sockaddr` 结构体的长度。 ...
参数说明如下: - `sockfd`:Socket描述符。 - `addr`:指向地址结构体的指针。 - `addrlen`:地址结构体的长度。 成功执行后,该函数返回0。 ##### 3.3 listen()和connect()函数 - **listen()**:用于将Socket...
- Windows Socket协议函数(lrs):处理网络通信,例如TCP/IP连接等。 `web_reg_find`函数用于在网页响应中查找特定文本,如`web_reg_find(“Text=Welcome”, SaveCount, LAST);`,用于确认页面是否正确加载。 在...
socket函数用于创建套接字,AF_INET参数指定了使用的地址族为IPv4,SOCK_STREAM参数指定了使用的协议为TCP。 2. socket函数的使用 在TCPClient.cpp文件中,使用socket函数创建了一个套接字,AF_INET参数指定了...
2. **函数定义**:对于每一个API函数,会有详细的定义,包括函数名、返回类型、参数列表以及每个参数的含义。例如,`int socket(int domain, int type, int protocol)`,表示创建一个新的套接字,其中`domain`、`...
**参数说明:** - `SOCKET s`: 表示一个已经建立连接的socket句柄。 - `const char FAR *buf`: 指向要发送的数据缓冲区的指针。 - `int len`: 表示要发送的数据长度(以字节为单位)。 - `int flags`: 控制标志位,...
- **Socket API详解**:详细解释Socket创建、连接、发送、接收、关闭等函数的使用方法和参数含义。 - **异常处理**:阐述如何处理网络通讯中可能出现的各种异常情况,如超时、连接中断等。 - **多线程编程**:讲解...
参数说明: - `nfds`:表示`fd_set`集合中最大描述符加1。 - `readfds`:用于检查可读事件的文件描述符集。 - `writefds`:用于检查可写事件的文件描述符集。 - `exceptfds`:用于检查异常事件的文件描述符集。 - `...
- **socket函数.txt**: 提供了`socket()`函数的详细解释,可能包括参数说明和返回值。 通过阅读这些文档,你可以深入了解Socket通信的各个方面,并能够使用VS2005开发出自己的Socket通信程序。记住,实践是检验真理...
4. **监听本地端口**:使用`bind()`函数将本地代理端口与Socket关联,然后用`listen()`函数设置Socket为监听模式,等待客户端的连接请求。 5. **接受客户端连接**:当有客户端连接到本地代理端口时,`accept()`函数...
- **参数说明**: - 第一个参数指定地址族,此处为 `AF_INET`,即 IPv4。 - 第二个参数指定 Socket 类型,此处为 `SOCK_STREAM`,表示流式套接字(TCP)。 - 第三个参数指定协议,通过 `getprotobyname()` 函数...