正如我们所知,itoa 试图将任何基数中的整数转换为具有固定大小的 char 数组,我试图找到一种替代方法,它可以做同样的工作,但在 c++ 中转换为以 2 为基数的字符串。
问问题
610 次
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,您可以使用bitset
和to_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 回答