ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 апреля
783069 Топик полностью
Petrovich (27.09.2017 13:20, просмотров: 1) ответил Ксения на Не надо сравнивать с единицей - пишите без сравнения if(UCSRA&(1<<FE)) или if(UCSRB&(1<<RXB8)) или if(UCSRA&(1<<PE)). Так можно, если тестируют число на присутствие отдельных битов.
Вообще-то лучше, когда в качестве условия для IF ставятся логические величины (здесь же - число). Причина, видимо, в "логическом" (побитовом) характере анализа условия. Но ведь число 0 может и не содержать все нули! Клевещут, что и стандарт С++ не гарантирует, что float(0) и даже int(0) реализуются как "все биты нулевые". Это работает, но это чисто случайно. Поэтому лично я выбрал явное сравнение !=0, если условие не лог.выражение