Какой тип использовать, чтобы задать массив двоичных кодов - C (СИ)

Формулировка задачи:

надо задать массив двоичных кодов вида: 1010, 0010, 0110 и т.п. что лучше взять? просто int потеряет не значащие нули (хз может это и не принципиально), а если писать 0x0010 то это вроде уже получится вообще другое число (в шестнадцатеричной системе), а мне с ними еще действия потом осуществлять...

Код к задаче: «Какой тип использовать, чтобы задать массив двоичных кодов - C (СИ)»

textual
#include <stdint.h>
 
int main (void) {
    
    uint8_t line = 0; /* <--- отрезок*/
    const uint8_t high_mask = 0xF0, low_mask = 0x0F; /* <--- маски для тетрад*/
    const uint8_t shift = 4; /* <--- длина сдвига */
    
    line = 10 << shift; /* <--- начальная точка. код '1010' взят произвольно*/
    line |= 7; /* <--- конечная точка. код '0111' взят произвольно*/
    
    /* если коды обоих концов отрезка равны 0... */
    if ((((line & high_mask) >> shift) | (line & low_mask)) == 0) {
        /* TODO */
        ;
    }
    /* если логическое & кодов обоих концов отрезка не равно нулю... */
    else if (((line & high_mask) >> shift) & (line & low_mask)) {
        /* TODO */
        ;
    }
    /* если логическое & кодов обоих концов отрезка равно нулю ... */
    else if ((((line & high_mask) >> shift) & (line & low_mask)) == 0) {
        /* TODO */
        ;
    }
    
    return 0;
}

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

5   голосов, оценка 4.600 из 5


СОХРАНИТЬ ССЫЛКУ
Похожие ответы