<unsigned car>
Должно быть:
<unsigned char>
Что такое buffer
? Разве вы не должны использовать charBuff
?
Используйте перегрузку operator<<
в течение dynamic_bitset
s, чтобы достичь того, что вы хотите. Вот упрощенное решение:
#include <iostream>
#include <string>
#include <boost/dynamic_bitset.hpp>
int main()
{
std::string charBuff("11010");
boost::dynamic_bitset<> dbitset(charBuff);
/* print LSB to MSB, in order */
for (boost::dynamic_bitset<>::size_type i = 0;
i < dbitset.size(); ++i) {
std::cout << dbitset[i];
}
std::cout << std::endl;
/* print bits in the order you want */
std::cout << dbitset << std::endl;
return 0;
}