我在将字符串二进制转换为小数时遇到问题
我正在使用bitset
bitstring ="1011010001111111";
unsigned long binToDec( string bitstring){
bitset<32> dec (bitstring);
return dec.to_ulong();
}
Run Code Online (Sandbox Code Playgroud)
所有这一切都很好,但!! 当我尝试用更多32位的位字符串做同样的事情时,问题就来了.我知道bitset只用4个字节进行转换,但是我需要用48或56位的字符串进行转换(有时我需要得到14或15位)
string bitstring;
bitstring ="11100101001001000000100000100100110100110011010001111111";
i want to get this number: 64497387062899840
Run Code Online (Sandbox Code Playgroud)
任何消化?任何人都有将二进制字符串转换为十进制的函数?
注意:我不能使用boost,因为它没有移植到iphone.
谢谢你的帮助