如何将十进制字符串转换为二进制字符串?

Den*_*nis 5 c++ algorithm binary

我有一个像这样的十进制字符串(长度< 5000):

std::string decimalString = "555";
Run Code Online (Sandbox Code Playgroud)

是否有标准方法将此字符串转换为二进制表示形式?像这样:

std::string binaryString = "1000101011";
Run Code Online (Sandbox Code Playgroud)

更新。

这篇文章对我有帮助。

060*_*002 3

由于数字非常大,您可以使用大整数库(boost,也许?),或者自己编写必要的函数。

如果您决定自己实现这些函数,一种方法是在代码中实现旧的纸笔长除法,您需要将十进制数重复除以并将2余数累加到另一个字符串中。可能有点麻烦,但是除以 2 应该不会那么难。