gpt4 book ai didi

c++ - 如何将位序列放入字节(C/C++)

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:31:19 27 4
gpt4 key购买 nike

我有几个整数,例如(二进制表示):

00001000, 01111111, 10000000, 00000001

我需要将它们按顺序放入字节数组(字符),不带前导零,如下所示:

10001111 11110000 0001000

我知道这必须通过使用 <<,>> 进行位移并使用二进制或 | 来完成。但是我找不到正确的算法,你能建议最好的方法吗?

我需要放在那里的整数是 unsigned long long int,所以一个的长度可以是 1 位到 8 字节(64 位)之间的任何值。

最佳答案

你可以使用 std::bitset :

#include <bitset>
#include <iostream>

int main() {
unsigned i = 242122534;
std::bitset<sizeof(i) * 8> bits;
bits = i;
std::cout << bits.to_string() << "\n";
}

关于c++ - 如何将位序列放入字节(C/C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9647423/

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