c - 独立于语言环境的 strtod 实现

标签 c string locale

我有一个库需要解析总是使用点“.”的双数。作为小数分隔符。不幸的是,对于这种情况,strtod() 尊重可能使用不同分隔符的语言环境,因此解析可能会失败。我不能 setlocale() - 它不是线程安全的。所以我现在正在寻找一个干净的独立于语言环境的 strtod 实现。到目前为止,我已经找到了多种实现方式,但它们看起来都很老套,或者就像是糟糕的代码。 有人可以为我推荐一个经过良好测试、有效、干净的 (ANSI) C 实现吗?

最佳答案

获取一些已知的实现(不依赖于 atof),例如使用 ruby​​ 分发的实现: ruby_1_8/missing/strtod.c .

关于c - 独立于语言环境的 strtod 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1994658/

相关文章:

c - 将 fftw3 与 fftw 复杂类型一起使用

无法在 C 程序中预加载函数

java - 在java字符串中放入特殊字符,例如 "ctrl+insert"

c++ - 人物分类

c# - 如何防止基于文件名设置嵌入式资源文件文化

c++ - OpenCV SVM 教程? Mat_<float>(1,2) 的函数定义在哪里

c - 内存分配器实现段错误

r - 获取R中字符串第一个大写字母的索引?

string - 字符串和静态字符串的区别

java - 有没有办法获得(仅)国家代码(有效的 ISO-3166 代码)的时区?