gpt4 book ai didi

c++ - 在 C++ 中转换为二进制

转载 作者:太空狗 更新时间:2023-10-29 20:31:02 26 4
gpt4 key购买 nike

我制作了一个将数字转换为二进制的函数。由于某种原因,它不起作用。它给出了错误的输出。输出是二进制格式,但它总是给出以零结尾的二进制数的错误结果(至少我注意到的是这样......)

unsigned long long to_binary(unsigned long long x)
{
int rem;
unsigned long long converted = 0;

while (x > 1)
{
rem = x % 2;
x /= 2;
converted += rem;
converted *= 10;
}

converted += x;

return converted;
}

请帮我解决一下,这真的很令人沮丧..

谢谢!

最佳答案

使用 std::bitset 进行翻译:

#include <iostream>
#include <bitset>
#include <limits.h>

int main()
{
int val;
std::cin >> val;

std::bitset<sizeof(int) * CHAR_BIT> bits(val);
std::cout << bits << "\n";

}

关于c++ - 在 C++ 中转换为二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5144380/

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