Конвертировать шестнадцатеричный цвет строки в uint_16 - PullRequest
1 голос
/ 28 октября 2019

Мне нужно преобразовать строку HEX в uint_16, чтобы использовать метод fillColor для оборудования m5Stack.

В настоящее время я выбираю значение цвета HEX через запрос GET дляhttps://m5stack.glitch.me/getColor

Я пытался uint16_t color = (uint16_t) strtol(http.getString(), NULL, 16);

Но получаю сообщение об ошибке cannot convert 'String' to 'const char*' for argument '1' to 'long int strtol(const char*, char**, int)' Как я могу взять строковое значение цвета HEX и преобразовать его в uint_16?

1 Ответ

3 голосов
/ 28 октября 2019

strtol() не может обрабатывать объект String как ввод. Вы должны преобразовать его в массив символов.

strtol(http.getString().c_str(), NULL, 16);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...