gpt4 book ai didi

c++ - 组合多个变量以作为 udp 数据包发送

转载 作者:行者123 更新时间:2023-11-28 03:12:17 24 4
gpt4 key购买 nike

我需要在 C++ 中通过 UDP 连接发送数据包。我需要发送的第一条消息由两个 32 位整数和一个 64 位整数组成。将多种变量类型组合成一个数据 block 以准备通过 UDP 连接发送的最佳方法是什么?

最佳答案

这取决于您的网络要求。你关心字节序吗?如果这样做,您不仅应该使用任何序列化,还应该使用在字节序方面安全的序列化。

一般来说,每个可通过网络发送的类/结构都应该有特殊的方法或重载运算符来将它们传入和传出。最终,您将不得不使用 hton/ntoh 等宏/函数来流式传输基本类型,例如 int、int64、float、double 等。

更新:如果您的网络端点应用程序在不同的平台/编译器上运行,您可能有不同大小的 int、long、short 等。因此在序列化时,您必须将整数转换为一些预定义的类型,并保证大小在所有支持的平台上都相同。

关于c++ - 组合多个变量以作为 udp 数据包发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18113727/

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