Преобразование float и double в char[]
- Войдите на сайт для отправки комментариев
Чт, 15/06/2017 - 14:35
Здравствуйте. Обшарил весь форум, но так решения и не нашел. Кто знает, подскажите пожалуйста, как выполнить наверное даже не преобразование типов, а скорей перевод значения типа float или double в char, таким образом чтобы я мог хранить число, например, 13.485918578 в переменной типа char[] = "13.485918578". Буду очень благодарен.
ftoa() не?
ftoa() не?
Arduino IDE не может найти такую функцию. В какой бибилиотеке лежит не знаю.
ftoa() не?
Не. Нету такой.
Обшарил весь форум,
А документацию производителя читать не пробовали?
Пример:
Пример:
Пример рабочий, большое спасибо, но, Mega почему то конкретно виснит при использовании этой функции. Пытаюсь сделать GPS трекер, который отправляет данные на сервер через GSM модем. И если идет вызов функции dtostrf то GSM модем начинает жутко глючить за счет загрузки Arduino. Как можно решить проблему?
а ты строку из функции отдаешь?
а ты строку из функции отдаешь?
Результат функции склеиваю в одну строку Buffer[100] и отправляю Ее. Размер буфера фиксированный с учётом всех параметров. Сервер без проблем все принимает. Однако, если закомментировать функцию перевода вещественных в чар модем перестаёт падать и запросы отправляются очень быстро.
A Buffer[100] где и как обьявлен?
Глобальная переменная. Очищаю ее после отправки с помощью memset(Buffer, 0, 100);
тогда скетч нужен. для разбирания
Здравствуйте. Обшарил весь форум, но так решения и не нашел. Кто знает, подскажите пожалуйста, как выполнить наверное даже не преобразование типов, а скорей перевод значения типа float или double в char, таким образом чтобы я мог хранить число, например, 13.485918578 в переменной типа char[] = "13.485918578". Буду очень благодарен.
Если вы хотите хранить float в EEPROM , то вам перевод не нужен. Храните в float
Хозяйке на заметку sprintf при использованиис Arduino тоже float не переваривает. Целые и символы по формату выводит. Тоже мучился с этим вопросом.
sprintf не переваривает ... мучился с этим вопросом.
Наш человек! Какой-нибудь тупой прочитал бы документацию и не мучился бы, но это не наш метод! Мы через мучения смысл жизни познаём :))))
sprintf не переваривает ... мучился с этим вопросом.
Наш человек! Какой-нибудь тупой прочитал бы документацию и не мучился бы, но это не наш метод! Мы через мучения смысл жизни познаём :))))
Так я в конце концов и прочитал документацию.)))
Если 25 лет использовал эту функцию и все работало на компе. А тут вдруг не пошло. Целые работает, а с float нет - сперва все перепробовал. Документацию читаем если уж своим умом сообразить не можем )))
Так я ж и говорю - "не наш метод". Сам тоже напоролся на это дело :)
Может кому и поможет.
https://bitbucket.org/AVI-crak/sprint