Как считать из файла двоичные числа и перевести их в десятичные?

Для считывания двоичных чисел из файла и их преобразования в десятичные, вам понадобится выполнить несколько шагов.

  1. Откройте файл, из которого хотите считать двоичные числа, используя функцию fopen. Например:
FILE *file = fopen("filename.bin", "rb");

Здесь "filename.bin" - это имя файла, в котором хранятся двоичные числа, а "rb" означает, что файл открывается в бинарном режиме для чтения.

  1. Создайте переменную для хранения считанного значения. Например:
unsigned int number;
  1. Используйте функцию fread для считывания двоичных чисел из файла. Например:
fread(&number, sizeof(unsigned int), 1, file);

Здесь &number - адрес переменной number, в которую будут считываться данные. sizeof(unsigned int) - размер переменной number, 1 - количество элементов для считывания, file - указатель на файл.

  1. Преобразуйте считанное двоичное число в десятичное. Для этого можно использовать цикл и побитовые операции:
unsigned int decimal = 0;
unsigned int position = 1;

while (number > 0) {
    int digit = number % 10;
    decimal += digit * position;
    position *= 2;
    number /= 10;
}

Здесь digit - младший бит двоичного числа, который добавляется к десятичному числу decimal. Position - позиция бита (1, 2, 4, 8, ...), number - считываемое двоичное число.

  1. Повторите шаги 3 и 4 для каждого двоичного числа в файле, пока не достигнете конца файла.
  1. Закройте файл, когда закончите чтение:
fclose(file);

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