It converts 1.0 to "1.e-01" which reminds me to remove the trailing decimal point =). dtoa-benchmark tests that the algorithm produces valid results on its dataset.
#include "zmij.h"
#include <stdio.h>
int main() {
char buf[zmij::buffer_size];
zmij::dtoa(1.0, buf);
puts(buf);
}
I get `g++ zmij.cc test.c -o test && ./test` => `0.000000000000001e+15`That is what Schubfach does