khlenar 5 18 марта, 2019 Опубликовано 18 марта, 2019 · Жалоба Здравствуйте все. Почему то не выводит в массив в формате Double в функции sprintf(mass,"%f",0.234); например. Массив ничем не заполняется. Другие опции работают. Например "%u"... В Keil проверять не хочется). В хелпе смотрел, данная опция есть. В чем может быть дело? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 18 марта, 2019 Опубликовано 18 марта, 2019 · Жалоба В 2 hours ago, khlenar said: В чем может быть дело? В библиотеке. Добавьте опцию -u _printf_float Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 18 марта, 2019 Опубликовано 18 марта, 2019 · Жалоба ОК! спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aaron 1 21 марта, 2019 Опубликовано 21 марта, 2019 · Жалоба На заметку - ещё при работе с double могут быть подводные камни в части выравнивания адресов до размера sizeof(double) - стек выравнивается по-умолчанию обычно на 4 байта (на примере corte-m) и по размеру и по адресу, надо до 8 байт выравнивать. Иначе тоже может в строку попасть не то, что вы ожидаете. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться