<charconv>
快速将字符序列转换为整数或浮点值,反之亦然。 使用此库的一种方法是在 JSON 和文本文件中编写和往返浮点值。
这些转换函数针对性能进行了优化,还支持最短的往返行为。 最短往返行为意味着当数字转换为字符时,只写出足够的精度,以便在将这些字符转换回浮点值时恢复原始数字。 没有其他 CRT 或 STL 函数提供此功能。
下面是使用 <charconv>
库的一些优势:
- 表示数值的字符序列不需要以 null 结尾。 同样,当数字转换为字符时,结果不会以 null 结尾。
- 转换函数不分配内存。 你在所有情况下都拥有缓冲区。
- 转换函数不会引发。 它们会返回包含错误信息的结构。
- 转换不区分运行时舍入模式。
- 转换不识别区域设置。 对于使用逗号的区域设置,它们总是将小数点打印并解析为“.”,而从不将其打印为“,”。
要求
标头:<charconv>
命名空间: std
需要 /std:c++17
或更高版本。
成员
类型
类型 | 描述 |
---|---|
chars_format | 指定格式设置类型,例如科学记数法、十六进制等。 |
from_chars_result | 保存 from_chars 转换的结果。 |
to_chars_result | 保存 to_chars 转换的结果。 |
函数
函数 | 说明 |
---|---|
from_chars | 将字符转换为整数、浮点数或双精度数。 |
to_chars | 将整数、浮点数或双精度数转换为字符。 |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈