c++csocket编程 5种模式

 我来答
netkinghancong
推荐于2016-02-28 · TA获得超过1592个赞
知道小有建树答主
回答量:823
采纳率:100%
帮助的人:502万
展开全部
1. 构造CSocket对象,如以下的枝庆形式:

CSocket Serversocket;

2. 利用CSocket对象的Create()函数创建Windows Socket,Create()函陪带数会调用Bind()函数将此Socket绑定到指定的地址上,其原型为:

BOOL Create (UINT nSocketPort = 0, int nSocketType = SOCK_STREAM, LPCTSTR lpszSocketAddress = NULL);

其中nSocketPort参数指定通信连接的端口号,端口号可以任意指定,但最好不要使用系统默认的一些端口号,例如21是FTP文件传输使用的端口号;

3. Socket创建完毕之后,在服务器端进行监听客户的连接请求,使用如下的代码:

ServerSocket.Listen();

紧接着对于客户端而言,将会调用Connect()函数向服务器发送连接请求,而对于服务器而言,则会调用Accept()函数对客户端发送过来的请求连接进行接受和处理,Accept()函数可以创建一个和监听Socket相同的连接芦搭芦Socket来处理客户的请求,二原来的Socket仍然处于监听状态,使用的形式如下。

客户端:

ClientSocket.Connect(服务器的地址,服务器的端口号);

服务器端:

CSocket ReceiveSocket;

ServerSocket.Accept(连接Socket,客户的地址结构,客户地址结构的长度)

4. 对于数据流服务器类型而言,服务器和客户各自通过调用函数来完成数据的发送和接受,使用如下的语句:

ServerReceive.Receive(缓冲区,缓冲区的长度,接受标志位);

Client.Send(缓冲区,缓冲区的长度,发送标志位);

5. 在客户端与服务器端的数据传输完成之后,调用下述语句,释放Socket所占有的资源。

ServerSocket.Close();

ReceiveSocket.Close();

ClientSocket.Close();
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式