This library is a reference implementation of Dragonbox in C++. Dragonbox is a float-to-string conversion algorithm based on a beautiful algorithm Schubfach, developed by Raffaello Giulietti in 2017-2018. Dragonbox is further inspired by Grisu and Grisu-Exact. Dragonbox generates a pair of integers from a floating-point number: the decimal significand and the decimal exponent of the input floating-point number. These integers can then be used for string generation of the decimal representation of the input floating-point number, the procedure commonly called ftoa or dtoa.

Features

  • It has the roundtrip guarantee; that is, a correct parser interprets the generated output string as the original input floating-point number. (See here for some explanation on this
  • The output is of the shortest length; that is, no other output strings that are interpreted as the input number can contain less number of significand digits than the output of Dragonbox
  • The output is correctly rounded: the number generated by Dragonbox is the closest to the actual value of the input number among possible outputs of minimum number of digits
  • Include Dragonbox into CMake project
  • Documentation available
  • Examples included

Project Samples

Project Activity

See All Activity >

Categories

Libraries

License

Apache License V2.0

Follow Dragonbox

Dragonbox Web Site

Other Useful Business Software
$300 in Free Credit Towards Top Cloud Services Icon
$300 in Free Credit Towards Top Cloud Services

Build VMs, containers, AI, databases, storage—all in one place.

Start your project in minutes. After credits run out, 20+ products include free monthly usage. Only pay when you're ready to scale.
Get Started
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Dragonbox!

Additional Project Details

Programming Language

C++

Related Categories

C++ Libraries

Registered

2024-09-20