首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >C++:如何将数组中的2个字节转换为无符号短整型

C++:如何将数组中的2个字节转换为无符号短整型
EN

Stack Overflow用户
提问于 2008-11-19 02:05:43
回答 9查看 42.9K关注 0票数 19

我一直在开发一个遗留的C++应用程序,这绝对超出了我的舒适区(这是一件好事)。我想知道有没有人愿意给我一些建议(双关语)。

我需要将无符号字符数组中的2个字节转换为无符号短整型。字节是连续的。

下面是我想要做的一个例子:

我从套接字接收一个字符串,并将其放在一个无符号字符数组中。我可以忽略第一个字节,然后将接下来的两个字节转换为无符号字符。这将只在windows上,所以没有大端/小端问题(据我所知)。

下面是我现在所拥有的(显然不起作用):

代码语言:javascript
复制
//packetBuffer is an unsigned char array containing the string "123456789" for testing
//I need to convert bytes 2 and 3 into the short, 2 being the most significant byte
//so I would expect to get 515 (2*256 + 3) instead all the code I have tried gives me
//either errors or 2 (only converting one byte
unsigned short myShort;
myShort = static_cast<unsigned_short>(packetBuffer[1])
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/300808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档