Преобразование Char в двоичный в C

Я пытаюсь преобразовать символ в его двоичное представление (так символ -> шестнадцатеричный Ascii -> двоичный).

Я знаю, что для этого мне нужно сдвинуть иAND, Однако мой код по какой-то причине не работает.

Вот что у меня есть.*temp указывает на индекс в строке C.

char c;
int j;
for (j = i-1; j >= ptrPos; j--) {
    char x = *temp;
    c = (x >> i) & 1;
    printf("%d\n", c);
    temp--;
}

Ответы на вопрос(3)

Ваш ответ на вопрос