1)我有一个大缓冲区 2)我有很多几乎每种类型的变量,
我使用此缓冲区以不同的字节顺序发送到多个目的地。
当我发送到网络字节顺序时,我通常使用 htons 或 htonl 以及针对特定数据类型的自定义函数,
所以我的问题
每次构建缓冲区时,我都会更改每个变量的字节顺序,然后使用 memcpy。
但是,有没有人知道更好的方法,就像我希望有一个具有特定预期字节顺序的高效 memcpy
一个例子,
UINT32 dwordData = 0x01234567;
UINT32 dwordTmp = htonl(dwordData);
memcpy(&buffer[loc], &dwordTmp, sizeof(UNIT32));
loc += sizeof(UNIT32);
这只是我随便写的一个例子顺便说一句
我希望有一个看起来像的功能
memcpyToNetwork(&buffer[loc], &dwordTmp, sizeof(UNIT32));
如果您知道我的意思,命名只是描述性的,并且根据数据类型,它会为特定数据类型执行字节顺序,因此我不必手动更改顺序并有一个临时变量要复制到,节省复制两次.