ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
25 апреля
610571 Топик полностью
Скрипач, пророк (22.07.2015 19:03, просмотров: 490) ответил Dingo на Да, можно. Но, скорей всего потеряем либо в удобстве, либо в понимании человеком текста. Опять же, как быть, если надо переклчать in\out во время работы?
Можно, например, вот так (и тогда ничего не теряется)  #define _setOutL(port,bit) do { port &= ~(1 << bit); } while(0) #define _setOutH(port,bit) do { port |= (1 << bit); } while(0) #define _setBidirectL(x) _setOutL(x) #define _setBidirectH(x) _setOutH(x) #define _set(port,bit,dir,val) _set##dir##val(port,bit)
... но не любой ценой.