Как персональный проект, я пишу компилятор для своего собственного C-подобного языка, чтобы настроить эмулятор процессора моего собственного дизайна.Как языки обрабатывают печать поплавков под капотом?
В качестве части этого я хочу внедрить стандартную библиотеку с плавающей запятой (типичная одиночная точность IEEE), но я изо всех сил пытаюсь придумать способ распечатать поплавки в удобном для чтения способом (как в 1.2345, а не целое число необработанных данных), лучшее, что я мог подумать, - это генерировать значения для журнала 2 и делать некоторые нечетные умножения, чтобы получить номер в подходящей форме для печати.
Есть ли алгоритм преобразования поплавка в легкодоступную для печати форму или для печати поплавка, который может быть реализован без использования printf("%f",float_value);
или типа отливок на C-подобном языке?
Конечно, почему бы вам не взглянуть на реализации 'printf'? –
Или один из них, например 'glibc', так как это исходный код, доступен для скачивания. –
Возможный дубликат [исходный код функций c/C++] (http://stackoverflow.com/questions/1127328/source-code-of-cc-functions) –