ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
3 февраля
1568700 Топик полностью
EmbedProg (Сегодня, 19:37, просмотров: 3) ответил 3m на Какой вариант оставить ? (вопрос чисто эстетический, размер кода одинаковый)
1. Второе не пройдет MISRA. Потому что у функции должен быть только одна точка входа и только одна точка выхода (один return). 

2. Когда шагаешь отладчиком первое шагаемо, второе нет.

3. Как уже сказали, у программиста всегда вызывает вопросы когда кто-то сдвигает целочисленную переменную и неявно превращает её в bool. С чего ему знать что сдвинутое >> 7 было битовым октетом (байтом)? А если нет? Что будет в bool? Так что на первый взгляд программиста это непонятность и это проблема.

4. Что такое 7? Почему не XXX_BITPOS ?

5. Вся ваша проблема, повлекшая необходимость писать весь этот пустой код-мишуру архитектурная. Вы её сами себе создали, почему-то решив что и лампочки и кнопки это одно, и их должна читать почему-то одна функция. Обдумайте еще раз, зачем это и что это дает лично вам или машине. И действительно ли это необходимо вместо двух однострочников а то и макросов.

Удачи.