битовая строка



Бит класс ру

Автор Вячеслав Бутусов задал вопрос в разделе Другие языки и технологии

Как создать класс для работы с битовыми строками не более чем из 100 бит? и получил лучший ответ

Ответ от
class BitString
{
unsigned char _data[104/8];
public:
void setBit(unsigned int id, unsigned char value)
{
unsigned char &byte = _data[id / 8];
unsigned char offsetInByte = id % 8;
unsigned char mask = 1 << offsetInByte;
value = (value & 0x01) << offsetInByte;
byte = byte & (mask ^ 0xff) mask & value;
}
unsigned char getBit(unsigned char id)
{
unsigned char &byte = _data[id / 8];
unsigned offset = id % 8;
return (byte >> offset) & 0x01;
}
Вячеслав Бутусов
Ученик
(89)
Спасибо, проверок нет, потому что это задание посвящено виртуальным методам и вот как оно выглядит целиком: Создать класс BitString (Класс для работы с битовыми строками не более чем из 100 бит. Битовая строка должна быть представлена массивом типа unsigned char, каждый элемент которого принимает значение 0 или 1.) и класс String (Класс для работы со строками, аналогичными строками Turbo Pascal (строка представляется как массив 255 байт, длина - в первом байте). Максимальный размер строки должен задаваться.).

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Как создать класс для работы с битовыми строками не более чем из 100 бит?
Бит на Википедии
Посмотрите статью на википедии про Бит
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*