Hello Alex.
Wed Jun 08 2005 00:05, Alex Mogilnikov wrote to me:
AM>>> sprintf(string, "%1.2f", value); AM>>> Или тут есть какой-то подвох? :)
DT>> Hу, наверное, килобайта четыре лишнего кода. :)
AM> Если он используется, значит нелишний. :)
А, не люблю я эту хреновину. Типичный пример сделанного на коленке явно _отладочного_ средства: неудобно, небезопасно и "тяжело". Куда приятнее было бы иметь (и в C тоже) оператор конкатенации строк "+" и отдельные функции типа int2str, float2str (на самом деле их может быть много, с разными возможностями). Тогда и реализация получается более красивой и атомарной, и использование более простым и интуитивным:
puts ("On step " + int2str(step) + " value is " + float2str(value) );
И использоваться будут только те функции, которые нужны в данном проекте.
DT>> Вообще, пользоваться такими средствами в мелких встроенных системах, DT>> по-моему, дурной тон. Разве что для отладочной печати...
AM> По-моему ничего дурного здесь нет. Во-первых (побуквоедствую AM> маленько), Евгений не уточнял, что его система - мелкая. :)
Hу, если он такие вопросы задаёт, то на крупное вряд ли замахивается. ;)
AM> Во-вторых, во многие мелкие по современным меркам системы (у нас AM> например много систем с 512 кбайт ОЗУ, вряд ли кто-то сегодня назовет AM> это крупной системой)
Смотря в каком контексте. Для МК типичны единицы килобайт (а то и сотни байт) ОЗУ, и их обычно вполне хватает. Впрочем, если и тут начнут писать программы мышью и делать всё на виртуальных методах... я вообще боюсь представить, во что это может вылиться. Если виндовая программа виснет или трапается, это можно пережить. А если так будет себя вести система управления чем-то серьёзным?
AM> легко эти "лишние" 4К проглотят и не поперхнутся. Зато разработчик AM> сможет взять уже готовое и отлаженное библиотечное решение вместо того AM> чтобы заниматься изобретением и отладкой своего. Так что априори AM> считать использование printf дурным тоном - дурной тон. :) Hа религию AM> похоже...
Прекрасно! Тогда надо писать на Аде. Hичего, что тяжёлая, проглотят и не поперхнутся. Зато надёжность и безопасность - не чета "супу из топора" - C++.
Dimmy.