В Jar делали большой проект. Попробовали битовые поля. Каждому битовому полю, независимо от его длины, Jar поставил в соответствие один байт. Все битовые поля имели длину меньше 8 бит. Общая сумма бит равнялась целому числу байт.
Большое спасибо автору за объяснение мало освещаемых вопросов (например: битовые поля и многих других). При просмтре задумался почему не была применена перегрузка для функций int_to_binary, uint32_to_binary. Оказывается перегрузка не поддерживается в С.
Очень информативно, спасибо!
thanks a lot
Может я че не понял или прослушал , но почему в консоли эклипса не встали в единицу бит 5 и 6?
В Jar делали большой проект. Попробовали битовые поля. Каждому битовому полю, независимо от его длины, Jar поставил в соответствие один байт. Все битовые поля имели длину меньше 8 бит. Общая сумма бит равнялась целому числу байт.
Добрый день! А как вывести битовые поля в двоичном виде через printf()? Существует ли для этого модификатор аналогичный %01X?
Увы, но для printf() такого модификатора нет. По этому у автора в примерах написана для такого вывода отдельная функция int_to_binary().
Большое спасибо автору за объяснение мало освещаемых вопросов (например: битовые поля и многих других). При просмтре задумался почему не была применена перегрузка для функций int_to_binary, uint32_to_binary. Оказывается перегрузка не поддерживается в С.
Интересно, а если сравнить эффективность битовых полей с битовыми операциями ( var1 |=1
от компилятора зависит. gcc 7.3 и так за один проход превращает в 4команды, а меньше не возможно. вывод эффективнее не возможно
какой то сумбур...