Как реализовать сложение 16ричных чисел в Си? Нужен алгоритм

программирование обучение C++ C/C++ Си

Допустим есть текстовая строка, в которой находится 16ричное число (допустим такое: "A12"). К нему нужно прибавить другое число ("B14").
Как это лучше всего сделать?
Мне в голову пришел такой алгоритм:
Перевести оба числа в десятичную систему счисления, сложить два числа, перевести результат в шестнадцатиричную систему счисления. А есть ли более элегантное решение этой проблемы (без перевода туда-сюда)?
И еще: как перевести число из 16ричной в 10ичную систему счисления?
Ответы:
Открой информатику за 8 класс и увидишь как оно переводится в обе стороны. В программе переводи сначала в Dec, складывай, потом снова в Hex, не забудь про поддержку дробей, проверяй калькулятором Windows.
16-и ричные числа это "сокращенное" предстваление двочиных, и каждая пара символов образует байт. Потому достаточно пройти по строке и построить число и применить байты.
По-моему, переводить в десятичную систему вообще не надо.
static buffer [20];
assert (sscanf (s1, "%X", a) == 1);


16 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.