Задать вопрос
Lovesuper
@Lovesuper
pyhon, java, swift программист

Как в С++ преобразовать строку содержащую hex в нативный hex?

В проекте на Arduino понадобилось собирать шестнадцатиричную команду для внешнего устройства при помощи конкатенации строк. Как привести строку вида "0x0104" к виду -- 0х0104 (число)? Опыта низкоуровневого программирования у меня нет, поэтому вот блуждаю.
  • Вопрос задан
  • 719 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@vilgeforce
Раздолбай и программист
Отбросить 0x, потом в цикле идти по строке слева направо. Каждый символ переводить в соответствующее число, пусть будет h. Потом result = result | h; result = result << 8; и переход к следующему символу.
Перевод из символа в число - 2-3 IF.
Ответ написан
std::string s = "0xaabbff";
unsigned long long a = std::stoull(s, 0, 16);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы