У меня есть массив символов, который я пытаюсь побитово сдвинуть вправо >>
, затем &
с другим массивом. Я думаю, что у меня неправильное представление о том, как это сделать.
Я думал, что хотя это был массив символов, просто указывающий, что my_array >>= 1
сдвинет все, но я получаю сообщение об ошибке:"error: invalid operands to binary >> (have ‘char[8]’ and ‘int’)"
Побитовое сравнение, которое я пытаюсь сделать, это с массивом аналогичного размера, инициированным для всех "0" «... для этого я получаю:"error: invalid operands to binary & (have ‘char *’ and ‘char *’)"
Нужно ли мне преобразовать эти массивы во что-то еще, прежде чем я смогу сдвинуть и сравнить?
Извините, я не очень ясно выразился... До этого момента были отличные советы, и я думаю, что теперь понимаю, что нет супер простого способа сделать это. В частности, то, что я пытаюсь сделать, это сдвинуть биты массива ВСЕГО символа вправо на 1, добавив бит, сдвинутый справа назад, к самой левой стороне массива, выполнить побитовое сравнение с другим массивом того же размера.
Технически сравнение не обязательно должно быть массивом с массивом... Мне просто нужны биты. Было бы проще преобразовать массив во что-то другое, прежде чем пытаться выполнять сдвиги/сравнения?