2013年2月27日水曜日

boost::dynamic_bitset で byte配列にコピー

 せっかくサンプルを作ったので…
#include <boost/dynamic_bitset.hpp>
#include <boost/format.hpp>
#include <iostream>

int main() {
  typedef boost::dynamic_bitset<unsigned char> ubits;

  ubits bitset(16); // 16 bits

  for( int i = 0; i < 16; ++i ) {
    bitset[i] = i % 2;
  }

  char buf[2];
  
  boost::to_block_range(bitset, buf);

  std::cout << (boost::format("%x %x") % (int)buf[0] % (int)buf[1]).str() << std::endl;

  return 0;
  
}
実行結果
ffffffaa ffffffaa

0 件のコメント: