Парсинг
- Войдите на сайт для отправки комментариев
Сб, 07/10/2017 - 23:45
Ребята как бы вы разбили эту строчку на float поступающие в COM . дайте пожалуйста пример.
sav_10.00_40.00_0.40_50_-50_175_21.00_2.50_full
Ребята как бы вы разбили эту строчку на float поступающие в COM . дайте пожалуйста пример.
sav_10.00_40.00_0.40_50_-50_175_21.00_2.50_full
$300
$300
$299.99
я то сделал, но хотел увидеть пример *нормального* кода.
я то сделал, но хотел увидеть пример *нормального* кода.
$999.99
ты еще прошлый перевод не отработал.
Проще всего использовать стандартную Serial.parseFloat() функцию.
я то сделал, но хотел увидеть пример *нормального* кода.
я то сделал, но хотел увидеть пример *нормального* кода.
Над Вами глумятся потому, что Вы не объяснили задачу - не сказали что Вам нужно. Код не бывает нормальным или ненормальным сам по себе - это всегда связано с задачей, которая и диктует критерии нормальности. Понимаете? Вот, например, такой код.
Казалось бы, вполне нормальный. Решает поставленную задачу. Универсальный - не зависит от количества чисел в строке, можно добавить ещё кучу чисел - всё преобразует за милую душу. Но, при некоторых критериях "нормальности" его можно разнести так, что мокрого места не останется. Например, от "срёт" в исходную строку. В каких-то задачах на это наплевать три раза, а в каких-то - это совершенно неприемлемо. Так что без чётко определённых критериев "нормальности" - Ваш вопрос, это просьба нарисовать сферического коня в вакууме. Отсюда и глум.
Да простят меня местные "гуру"...)):
https://www.arduino.cc/en/Tutorial/StringSubstring
https://www.arduino.cc/en/Tutorial/StringIndexOf
Код естественно можно упростить, но для понимания пойдёт и так...
P.S. Вместо того чтобы разводить срач можно было бы сделать тему по методам парсинга строки (возможно такая уже есть, не искал). К тому же вопрос был задан вполне понятно.
P.S. Вместо того чтобы разводить срач можно было бы сделать тему по методам парсинга строки
Так, делайте. Вам кто-то запрещает?
Ни хера не пойдёт!
ТС ясно просил "нормальный" код, а не говнокодище на 80 строк (если "и.т.д." развернуть), который надо править всякий раз, когда нужно убрать или добавить число во входном потоке. Я уж не говорю про то, что делают с памятью такая гора нахрен не нужных String'ов.
ТС не писал нужно ли принимать что-то другое, в другом формате. Если всегда передаются восемь значений в одном и том же порядке, то проще сделать так.
Всем спасибо.
ЕвгенийП - отдельное спасибо, я именно такой конструкции for ниразу не встречал, как и впрочем и strtok вижу впервые...
немогли бы прокоментировать p; - воспринимается компилятором это как? выполнять пока указатель не равен NULL?
Да, выполнять, пока не 0.