Преобразование строки шестнадцатеричных символов в массив полубайтов (опыт собеседования)

Я видел этот вопрос без ответа в опыте интервью

прежде всего, мне нужно понять вопрос,

(полубайт соответствует одному шестнадцатеричному символу, верно?) Итак, если задана шестнадцатеричная строка «12A», то вывод должен быть

arr[0]=0001
arr[1]=0010
arr[2]=1010

это правильно или я неправильно понял?

если да, то как мне реализовать это на С#? какой здесь тип arr?


person Salma Nafady    schedule 04.11.2013    source источник
comment
Я думаю, что ваш последний вопрос есть вопрос к тому, кто берет у вас интервью. Это может быть строка, это может быть числовой тип. Формат предполагает числовое значение, но также предлагает запись с основанием 10, что неверно/нечетно.   -  person Lasse V. Karlsen    schedule 04.11.2013


Ответы (1)


Полубайт представляет собой четырехбитный двоичный файл. Таким образом, вам нужно три кусочка, чтобы представить 12A.

arr у вас есть неверный - так как нет 2 в двоичном формате.

arr[0]=0001
arr[1]=0010
arr[2]=1010

Для реализации С# см. Как вы можете кусать (кусать) байты в С#?

person Kami    schedule 04.11.2013