在listen监听到有新客户端时,就可以用accept函数响应客户的连接请求,建立与客户端的连接。产生一个新的socket描述符来描述该连接,这个连接用来与发起该连接请求的客户交换数据。
函数功能:
接收客户端连接请求
头文件:
#include <winsock2.h>
函数原型:
int accept(int sockfd, struct sockaddr *addr, int *addrlen);
返回值类型:
整型
返回值:
成功返回非负值,失败返回-1
参数说明:
sockfd为建立socket函数返回的值。
addr为 sockaddr 结构体变量的指针,这个参数是指针类型,是向外传内容的,即addr将在函数调用后填入对方(客户端)的地址信息,如对方的IP、端口等。
addrlen为 addr变量的大小,可由 sizeof() 计算得出。
调用accept函数整体代码的实现:
struct sockaddr_in clientaddr//创建客户端地址结构体
int aID;//用来接收accept函数返回值
aID=accept(sockfd,(sockaddr*)&clientaddr,&sizeof( clientaddr));//等待接收客户连接请求
本文固定URL:https://www.dotcpp.com/course/779