Linux网络编程—listen、accept、connect
一、网络四件套
#include <sys/types.h> //头文件;这四个文件一包,基本网络就无问题了;
#include <sys/socket.h>#include <netinet/in.h>
#include <arpa/inet.h>
二、listen
监听:将套接字(文件描述符)变成监听状态;监视是否有链接进入;
// 开始监听 socket (TCP, 服务器 )int listen(int socket, int backlog);
参数
1.socket:套接字(文件描述符);将创建的套接字传入;
2.backlog:监听的队列;比如有大量的链接进入,只能连1个链接;剩余的没连上的‘就会等待被链接;
三、accept
// 接收请求 (TCP, 服务器 )int accept(int socket, struct sockaddr* address,socklen_t* address_len);
参数:请参考以下链接描述
https://mp.csdn.net/mp_blog/creation/editor/141278282
描述:此函数为阻塞式函数;在未连接时,处于阻塞状态等待链接;链接完成后,则正常向下运行;而且,我的返回值也是一个套接字;我是通过返回的套接字与客服端通信;
四、connect
// 建立连接 (TCP, 客户端)
int connect(int sockfd, const struct sockaddr *addr,socklen_t addrlen);
参数:同上;