2016-12-02 4 views
-3

Как преобразовать массив символов в его десятичное значение ascii.Преобразование char в ascii десятичное значение

Этот массив:

uint8_t character[4]; 
character[0] = '1'; 
character[1] = '2'; 
character[2] = '3'; 
character[3] = '4'; 

To:

uint32_t value = 49505152 

Спасибо! и, если возможно, верните его обратно.

+1

Конверсия в этом формате, вероятно, невозможна. Невозможно узнать, соответствует ли «49505152» «4», «9», «50», «5», «1», «52» или любой другой перестановке. –

+0

Возможно, символ 'int value = (int) [0];' –

+0

'uint8_t c [4] =" 1234 "; uint32_t value = 100 * (100 * (100 * c [0] + c [1]) + c [2]) + c [3]; ' – BLUEPIXY

ответ

1

Как преобразовать массив символов в его десятичное значение ascii.

'1'49. Таким образом, '1' * 100 + '2' - 4950. Я предлагаю цикл for.

Спасибо! и, если возможно, верните его обратно.

49505152 % 100 является 52, 49505152/100 является 495051

Опять же, для цикла было бы полезно.

С помощью этой информации, я думаю, вы скоро закончите свою домашнюю работу.

+1

Это работает только для значений ASCII до 99. Так много для большинства строчных букв ... –

+1

Да, это работает для заданного вопроса. –

+0

Это ок. Я буду использовать только «0» - «9». Цель этого - записать 4-контактный пин-код на мою флеш-память MCU. @BodoThiesen Большое вам спасибо. Мне нужно преобразовать его снова, чтобы я мог отображать его значение на моем последовательном мониторе. :) – khelogram

Смежные вопросы