Страницы

Поиск по вопросам

четверг, 19 марта 2020 г.

Как на Си в целой переменной (регистр) изменить какой либо бит?

#c #переменные #cpp


Нужно на Си изменить в целой переменной изменить бит, так чтобы не затронуть остальные?    


Ответы

Ответ 1



Есть несколько вариантов. Но по моему так будет лучше всего: // Присваиваем BIT2 - (0?1 << 2), вместо 2 номер любого бита с которым хотите работать! #define BIT2 (0?1 << 2) static int per; //Ваша переменная void set_bit2(void) //Функция которая будет устанавливать Ваш бит { per |= BIT2; //Установка соответствующего бита } void clear_bit2(void) //Функция которая будет затирать Ваш бит { per &= ~BIT2; //Стираем соответствующий бит } Как то так, но если хотите можете вспомнить битовые поля ))

Комментариев нет:

Отправить комментарий