问题标签 [atof]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
539 浏览

c - 来自 K&R 的 atof 代码解释

我明白我们在做什么,在我们将字符串转换为 int 之前,现在我们正在将字符串转换为 double。我不明白这段代码背后的逻辑。有人可以为我澄清一下吗?此致。

0 投票
1 回答
304 浏览

c - atof 使用 atoi 错误

这是一个将字符串转换为的atof函数,float首先将字符串转换为整数,然后将整数除以 10 以在保存小数点位置后得到实数

尽管条件为真,但程序并没有进入第二个负责省略小数点的 while 循环

我在 ubuntu14.04 上使用 Geany 1.23.1

0 投票
1 回答
87 浏览

c - 实现了名为 atof_beta 的 atof,但结果与 atof 不同

我写了一个名为 atof_beta 的 atof 函数,我运行它,但结果与 atof 的结果不一样。

例如:输入:11111111111111111111111111111111111111111111111111111111111111111111111111111111

输出:(fabs(val-atof(s)) <= EPSILON) 等于零。

0 投票
1 回答
2827 浏览

c++ - 双 C++ 的算术错误

我注意到一些使用 double 的算术计算存在小错误。这真的很奇怪,总是有一个小错误和/或一个额外的有效数字。

首先,我使用 atof 转换从文本文件中读取的具有两个有效数字的数字(然后将它们记录在向量上):

然后我正在做算术(来自其他类,两个不同的对象):

这是输出:

如您所见,两种计算都存在错误。差异 = 3.463 而不是 3.4628。并且 diff2 = 3.742 而不是 3.7416。

你知道怎么回事吗??

0 投票
2 回答
591 浏览

c - 编译代码时atof冲突

我刚刚开始了我的 C 编程之旅。我遇到了 lib 冲突的问题。请在下面找到我的示例代码。

当我运行此代码时,出现以下编译错误:

错误:“atof”的类型冲突

我正在使用 CodeBlocks + mingw c 编译器

编辑(回应评论):

我想下载一个参数并可能返回一个double值,atof没有stdlib.h,但无法定义getline

0 投票
0 回答
135 浏览

c++ - 有没有更快更准确的atof?

更新1

因此,在将“+49.984367875E-230”转换为双精度并转换回字符串后,如何将其打印为“4.998436788E-229”?

因为我必须将“+49.984367875E-230”转换为加倍才能进行比较。


将字符串转换为双精度并将双精度转换为字符串时出现问题。例如:

结果是这样的:

那么,为什么 stdlibatof得到sprintf了错误的结果呢?由于 grisu2 是对的,所以我想atof是好的,但是sprintf错了吗?

因为我有grisu2,**所以我想要一个更快更准确的atof,我已经搜索了互联网和stackoverflow,但是**这个fast_atof不好。

我想要类似grisu2的东西,有什么论文或好的实现吗?

0 投票
3 回答
1530 浏览

c++ - 在 C++ 中使用 atof 将带小数的字符串转换为双精度

在我的程序中,我试图用“$876,725.38”这样的钱读取文件,我能够删除逗号和美元符号,我现在正在尝试使用 atof 将字符串转换为双精度,但我现在遇到的问题是在打印MONEYS转换后,我得到了大部分时间之前的所有内容,但有些时间之前少于 6 位的数字在期间之后会打印一位或两位数字。如果有人对此有解决方案,将不胜感激。我是 C++ 新手,需要帮助。谢谢!

主要问题:从字符串转换为双精度,小数点后的数据不打印。

样本输出:

0 投票
3 回答
21637 浏览

c++ - 如何将用户输入字符转换为 Double C++

我试图找出一种获取用户输入字符并将其转换为双精度的方法。我已经尝试过该atof功能,但它似乎只能与常量字符一起使用。有没有办法做到这一点?这是我想做的事情的想法:

0 投票
2 回答
584 浏览

c++ - boost::lexical_cast 线程安全吗?

我实际上未能在 boost 文档中找到这个问题的答案。我对atof在多线程环境中使用有点偏执,所以一个建议是将调用替换为lexical_cast. lexical_cast线程安全吗?

0 投票
1 回答
133 浏览

c - 浮动打印提供额外的数字

我很难打印浮点变量。它给了我额外的数字,那不应该在那里。这是示例:

这显然是错误的输出。有什么建议么?