Бинарный код записать в переменную char - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Имею я например следующую переменную:
Листинг программы
  1. char *cс = "10100101"
Подскажите, каким образом значение переменной можно записать в виде символа, т.е. сhar занимает в памяти компьютера 1 байт т.е. 8 бит, в переменной cc значение "10100101". Т.е. по сути 8-ми знакам(единицы и нули) данной последовательности "10100101"(если данную последовательность рассматривать как записть 1 и 0 в памяти компьютера) соответствует какой-то знак. Вот этот то знак я и хочу вывести на экран либо записать в переменную типа char. Ccылке тоже буду оч рад!!!!

Решение задачи: «Бинарный код записать в переменную char»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(void) {
  5.     char* cc = "10100101";
  6.     unsigned char c = (unsigned char)strtol(cc, NULL, 2);
  7.    
  8.     printf("Hex: %hhx Dec: %hhu\n", c, c);
  9.    
  10.     return 0;
  11. }

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы для работы с библиотекой stdlib.h и для работы с файлами ввода/вывода stdio.h
  2. Объявляем функцию main, которая является точкой входа в программу
  3. Объявляем переменную cc типа char* и инициализируем её строковым литералом 10100101
  4. Приводим указатель cc к типу unsigned char и сохраняем результат в переменную c
  5. Преобразуем переменную c в шестнадцатеричную систему счисления с помощью функции printf
  6. Выводим значение переменной c в десятичной системе счисления с помощью функции printf
  7. Возвращаем 0, чтобы указать, что программа успешно завершилась

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы