Преобразование int в 4-байтовый массив символов (C)

Эй, я хочу преобразовать int, который вводится пользователем, в 4 байта, которые я назначаю массиву символов. Как это может быть сделано?

Пример:

Преобразовать пользовательский ввод 175 в

00000000 00000000 00000000 10101111

Вопрос со всеми ответами до сих пор, преобразование 255 должно привести к0 0 0 ff хотя распечатывается как:0 0 0 ffffffff

unsigned int value = 255;   

buffer[0] = (value >> 24) & 0xFF;
buffer[1] = (value >> 16) & 0xFF;
buffer[2] = (value >> 8) & 0xFF;
buffer[3] = value & 0xFF;

union {
    unsigned int integer;
    unsigned char byte[4];
} temp32bitint;

temp32bitint.integer = value;
buffer[8] = temp32bitint.byte[3];
buffer[9] = temp32bitint.byte[2];
buffer[10] = temp32bitint.byte[1];
buffer[11] = temp32bitint.byte[0];

оба результата в0 0 0 ffffffff вместо0 0 0 ff

Просто еще один пример - 175, поскольку входные данные распечатываются как0, 0, 0, ffffffaf когда это должно быть просто0, 0, 0, af