Набор битов имеет фиксированное количество битов.Вы указываете bitset<CHAR_BIT>
- в большинстве систем CHAR_BIT равен 8, поэтому у вас будет 8-битный набор битов.Когда вы пытаетесь вставить большее число в набор битов, самые значимые биты отбрасываются.
Если вы заранее знаете, какие самые большие числа вам придется иметь дело, вы можете указать, например, bitset<16>
или bitset<32>
.Если вы этого не сделаете, возможно, вам придется использовать другой тип данных .