Как задать маску вида 0x55555555 переносимым образом?
1,00
р.
р.
В некоторых задачах связанных с манипуляцией битами нужна маска для всех чётных битов. Каждый раз такая маска задаётся константой вида 0x55555555, что хорошо если unsigned занимает 32 бита. А если 16 или 64? Как определить маску для всех чётных битов способом, который будет работать для любого числа бит в типе? Определение должно быть константой времени компиляции.