Det finns faktiskt flera snabbare metoder för att korrekt representera flyttalsnummer som strängar, en av dem är Denna github-repo
jämför flera algoritmer i C och C++, och den innehåller källkoden för Grisu2-metoden i C
, som han hävdar är 5,7 gånger snabbare än sprintf
.
Men författaren till samma repo (Milo Yip ) tillhandahåller sin egen C++ singelhuvudimplementering som påstås vara 9,1 gånger snabbare, förmodligen eftersom fler av funktionerna är helt inbyggda. Jag tror att det borde vara trivialt att porta den här koden till C, eftersom den inte använder någon speciell C++-syntax.