百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
R

ryu

> 编程语言
开源

将浮点数转换为小数字符串

1.3K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

将浮点数转换为小数字符串

Ryu & Ryu Printf() (https://travis-ci.org/ulfjack/ryu) 此项目包含用于将 IEEE-754 浮点数转换为十进制字符串的例程,支持最短的固定格式 %f 和科学格式 %e。主要实现是用 C 语言编写的,最短的转换例程还被移植到了 Java 中。所有算法都已在经同行评审的出版物中发表。在本文撰写时,这些算法是已知的最快的浮点数到字符串转换算法。固定和科学转换例程的速度比 glibc、苹果的 libc、MSVC 等常用的 sprintf 实现快几倍。

对于 16 位和 32 位 IEEE 浮点数,可以通过转换为 64 位并使用 64 位例程来实现科学和固定输出格式。请注意,目前尚无 128 位实现。在转换为最短时,请不要强制类型;最短转换是基于源类型的精度,强制转换为不同类型将无法返回预期的输出。此外,还有一些高度优化的 32 位和 64 位实现,以及一个通用的 128 位实现,可处理最多 128 位的任何 IEEE 格式。

IEEE 类型 支持的输出格式
16 位 (半) 最短 (通过 ryu_generic_128.h)
32 位 (浮点) 最短
64 位 (双精度) 最短、科学、固定
80 位 (长双精度) 最短 (通过 ryu_generic_128.h)
128 位 (__float128) 最短 (通过 ryu_generic_128.h)

代码持续在 Ubuntu 18.04、MacOS High Sierra 和 Windows Server 1803 版本上进行测试。

第三方/ 目录外的所有代码均由 Ulf Adams 和贡献者拥有版权,可根据 Apache 2.0 许可证自由使用。或者, ryu/ 目录中的文件可根据 Boost 1.0 许可证自由使用。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C++

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言