gpt4 book ai didi

C++ 通过套接字发送字符串

转载 作者:行者123 更新时间:2023-11-30 01:22:56 25 4
gpt4 key购买 nike

我正在做一个小型客户端/服务器项目,作为 C++ 类(class)的期末项目。我们得到了一些负责通信的类(使用 sys/socket.h),我们基本上可以做到 connection->send(byte)发送一个字节的数据。

假设我有一个要发送的字符串。当从客户端发送到服务器时,如何确保“a”被解释为“a”,反之亦然?由于标准没有说明 char 默认为无符号或有符号,所以我不知道如何处理它。

我想到可以减去 std::numeric_limits<char>::min()在每一端,但我不确定这是一个好的。

最佳答案

TCP 和 UDP 都不关心字符串的编码。它总是被解释为一个字节数组。因此,为了确保您的字符串被正确解释,服务器和客户端都必须就通用编码达成一致。

在你的情况下,我将简单地使用 std::string 的 c_str() 方法来发送字符串并通过将接收到的数据解释为 const char* 来分配字符串>(对于 ASCII 字符串)。只要客户端应用程序和服务器应用程序使用相同的字符串库,这就应该有效。

关于C++ 通过套接字发送字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15568215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com