バイナリファイルからの入力ストリームがあります。ストリームの最初の5ビットのビットセットを作成したいと思います。これが私がこれまでに持っているコードです:
ifstream is;
is.open ("bin_file.out", ios::binary );
bitset<5> first_five_bits;
is >> first_five_bits; // always is set to default 00000
char c;
if( ! cin.get(c) ) throw ROFL(); // return error, flip bit, call mom
bitset<5> first_five_bits(c >> (CHAR_BIT-5)); // CHAR_BIT in <climits>
ストリームはビットでは機能しないため、バイトを読み込んでビットセットに設定する必要があります。
コンパイルされていない、テストされていない:
char c;
is >> c;
bitset<5> first_five_bits(c >> 3);