Я пытаюсь перевернуть биты беззнакового 32-битного целого числа и вывести итоговое целое число. Ниже приведен мой код.Ошибка преобразования байт-массива в байты
int numberOfTries = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < numberOfTries; i++)
{
uint input = Convert.ToUInt32(Console.ReadLine());
byte[] bInput = BitConverter.GetBytes(input);
if (BitConverter.IsLittleEndian)
Array.Reverse(bInput);
byte[] result = bInput;
BitArray b = new BitArray(new byte[] { result });
b.Not();
uint res = 0;
for (int i2 = 0; i2 != 32; i2++)
{
if (b[i2])
{
res |= (uint)(1 << i2);
}
}
Console.WriteLine(res);
}
Однако компилятор жалуется, что «Не удается неявно преобразовать тип„байт []“на„байт“» на линии, где я объявляю BitArray б. Я объявил его байтом [] и не знаю, почему эта ошибка возникает.
Спасибо, это было! – Nathan822
Рад помочь! :) – ama1111