0

正如我们所知,itoa 试图将任何基数中的整数转换为具有固定大小的 char 数组,我试图找到一种替代方法,它可以做同样的工作,但在 c++ 中转换为以 2 为基数的字符串。

4

2 回答 2

0

您可以轻松编写自己的代码。

void my_itoa(int value, std::string& buf, int base){

    int i = 30;

    buf = "";

    for(; value && i ; --i, value /= base) buf = "0123456789abcdef"[value % base] + buf;

}

这是取自这个网站,以及许多其他替代品。

于 2014-05-30T02:27:39.673 回答
0

对于 C++11,您可以使用bitsetto_string

#include <iostream>
#include <bitset>
using namespace std;

int main() {
    // your code goes here
    cout << bitset<4>(10).to_string() << endl;
    return 0;
}
于 2014-05-30T02:37:43.363 回答