我想知道解释“位串”的最佳方法是什么?
例如:
像“1010010”这样的位字符串被输入到以下函数
void foo (string s1) {
// some code to do bit manipulation of the bit string
}
最好的方法是什么?非常感谢!!!
答案 0 :(得分:2)
如果您只想将字符串转换为其整数值,那么std::stoi
系列可以提供帮助:
int value = std::stoi("10100"); //value will be 10100, not 20
如果你想操纵字符串表示的位模式,那么std::bitset
可能会以某种方式帮助你:
std::bitset<32> bitpattern("10100");
//you can manupulates bitpattern as you wish
//see the member functions of std::bitset
//you can also convert into unsigned long
unsigned long ul = bitpattern.to_ulong(); //ul will be 20, not 10100
答案 1 :(得分:0)