1 #ifndef OSMIUM_UTIL_DOUBLE_HPP 2 #define OSMIUM_UTIL_DOUBLE_HPP 59 assert(precision <= 17);
64 int len = snprintf(buffer, max_double_length,
"%.*f", precision, value);
66 int len = _snprintf(buffer, max_double_length,
"%.*f", precision, value);
68 assert(len > 0 && len < max_double_length);
70 while (buffer[len - 1] ==
'0') {
73 if (buffer[len - 1] ==
'.') {
77 return std::copy_n(buffer, len, iterator);
88 inline void double2string(std::string& out,
double value,
int precision) {
96 #endif // OSMIUM_UTIL_DOUBLE_HPP T double2string(T iterator, double value, int precision)
Definition: double.hpp:58
Namespace for everything in the Osmium library.
Definition: assembler.hpp:73
constexpr const int max_double_length
Definition: double.hpp:46