如何使用按位运算将 4 个字符存储到 unsigned int 中?
我想将 4 个字符(4 个字节)存储到一个无符号整数中。
I would like to store 4 char (4 bytes) into an unsigned int.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我想将 4 个字符(4 个字节)存储到一个无符号整数中。
I would like to store 4 char (4 bytes) into an unsigned int.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
您需要将每个字符的位移过来,然后将它们组合成 int:
这使用字符数组,但无论数据如何传入,原理都是相同的。(我认为我的移位是正确的)
You need to shift the bits of each char over, then OR combine them into the int:
That uses an array of chars, but it's the same principle no matter how the data is coming in. (I think I got the shifts right)
另一种方法可以做到这一点:
One more way to do this :
越简单越好:
More simple, its better :
你可以这样做(不是按位,但可能更容易):
或者如果你想要按位,你可以使用:
如果你不先将其清空,你可能会得到另一个结果。
You could do it like this (not bit-wise, but maybe more easy):
Or if you want bit-wise you can use:
If you don't blank it first you might get another result.