khlenar 0 Posted March 18, 2019 · Report post Здравствуйте все. Почему то не выводит в массив в формате Double в функции sprintf(mass,"%f",0.234); например. Массив ничем не заполняется. Другие опции работают. Например "%u"... В Keil проверять не хочется). В хелпе смотрел, данная опция есть. В чем может быть дело? Quote Ответить с цитированием Share this post Link to post Share on other sites
aaarrr 0 Posted March 18, 2019 · Report post В 2 hours ago, khlenar said: В чем может быть дело? В библиотеке. Добавьте опцию -u _printf_float Quote Ответить с цитированием Share this post Link to post Share on other sites
khlenar 0 Posted March 18, 2019 · Report post ОК! спасибо. Quote Ответить с цитированием Share this post Link to post Share on other sites
Aaron 0 Posted March 21, 2019 · Report post На заметку - ещё при работе с double могут быть подводные камни в части выравнивания адресов до размера sizeof(double) - стек выравнивается по-умолчанию обычно на 4 байта (на примере corte-m) и по размеру и по адресу, надо до 8 байт выравнивать. Иначе тоже может в строку попасть не то, что вы ожидаете. Quote Ответить с цитированием Share this post Link to post Share on other sites