【问题标题】:tcp server client communication read() write() problems. c languagetcp 服务器客户端通信 read() write() 问题。 c语言
【发布时间】:2013-08-24 23:19:08
【问题描述】:

我有问题,我在 c 中编写了一个 tcp 客户端,但问题是客户端向服务器发送命令服务器发送对该命令的响应,响应是 xxx#。但是在客户端中,当我从套接字读取时,我从服务器读取了 2 个响应例如 xxx#xxx#.know 客户端仅针对第一个响应表单服务器发送响应,并且一个响应是删除。这一直不一样,例如客户端可能只读取 1 个响应 ind 将响应那个。如何搜索 # in char 数组并提取命令和客户端对来自服务器的所有响应的响应。有什么想法吗?

我知道从客户端到服务器的一次写入以读取客户端中的响应是个好主意,或者我写入服务器并在一次读取中读取所有响应?

示例:

client write() --------> server

客户端读取()

或

客户端写入() ---------> 服务器

客户端写入() ---------> 服务器

client read()

【问题讨论】:

  • 如果您共享您的代码或至少显示服务器/客户端代码的 sn-ps,将会很有帮助。
  • TCP 的行为与您描述的不同。您的隐形代码中有一个错误。发表评论。

标签: c tcp tcpclient


【解决方案1】:

服务器中的receive 函数应始终处于活动状态。因此,应该放在while(1) 循环中。

当客户端发送消息时,它应该收到来自服务器的确认。

服务器 -> 随时准备接收。

客户端 -> 即时发送和接收。

【讨论】:

  • 很难看出这是如何回答这个问题的,不管它是什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-12-20
  • 2021-08-23
  • 2012-04-19
  • 1970-01-01
  • 2015-05-06
  • 2020-07-15
  • 2013-12-14
相关资源
最近更新 更多