将二进制字符串转换为整数字符串c ++

jav*_*974 0 c++ string binary decimal

可能重复:
将1s和0s的字符串转换为二进制值

我想将二进制字符串转换为c ++中的整数字符串.例如:

"000000000010""2"

我有以下约束:我不能将此字符串转换为整数类型,然后再将其转换为字符串,因为该二进制字符串可能非常大!

我已经尝试过这样做,用stringstream标志插入二进制字符串std::stringstream::binary然后使用std::dec标志输出内容,但它不起作用

谢谢大家.

rub*_*nvb 9

您可以构造一个std::bitsetfrom std::string,并使用std::bitset::to_ulongstd::bitset::to_ullong获取一个整数.一定要照顾字节序,不是为你做的.

如果需要整数的字符串,请使用std::to_string.