TCP套接字编程!!!

一:Socket编程的基本函数详解,其中根据客户端还是服务端,或者根据使用TCP还是UDP,函数的调用流程有些许区别:

(1)socket(): 函数用于建立一个套接字,一条通信线路的端点。

(2)bind():    该函数是用于将sockaddr结构的地址信息与套接字进行绑定。主要用于TCP的连接,UDP一般不需要。

(3)listen():  在服务端程序成功建立套接字和与地址进行绑定之后,还需要准备在该套接字上接收新的连接请求。此时调用listen()函数来创建一个等待序列,在其中存放未处理的客户端连接请求。

(4)accept(): 服务端程序调用listen()函数创建等待队列之后,调用accept()函数等待并接收客户端的连接请求。它通常从由listen()所创建的等待队列中取出第一个未处理的连接请求。

(5)connect():客户端通过一个未命名套接字和服务器监听套接字之间建立连接的方法来连接到服务器。这个工作客户端通过使用connect()函数来实现。


图1-1 使用TCP时Socket编程流程图


图1-2 使用UDP时Socket编程流程图

使用TCP实现Socket编程Qt的C++源代码下载地址:Socket