C++从字符串中解析小 float

标签 c++ parsing

我希望我的代码从文件中读取参数。我在该文件中有这一行:

tol=1e-10

我使用atof将其解析为 float :

double tol;
char * c = "1e-10"
tol=atof(c);

但是,它被解析为 0 而不是 1e-10

编辑:事实证明它解析正确,很抱歉打扰你们了。我忘记了 printf 默认情况下不显示小值。我一开始就怀疑这一点,因为我的一张支票被卡住了。

最佳答案

这段代码:

#include <iostream>
#include <cstdlib>
using namespace std;

int main() {
    double d = atof( "1e-10" );
    cout << d << endl;
}

打印 1e-10。

关于C++从字符串中解析小 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5855566/

相关文章:

c++ - 在通用 C++ 代码中移动基于范围的循环?

c++ - 如何在C++中使用可读的2的常数幂?

python - Python 上的不规则字符串解析

c++ - 运行程序时出现运行时错误,但使用调试器时却没有

c++ - 如何使用boost is_class 来判断一个对象是否是一个类?

c++ - GCC - 标准库中的 fatal error 包括

python - 将 python 源代码解析为 html - 引号

javascript - 如何检查以数字结尾的字符串不是日期?

python - 使用python从c源代码文件中提取函数代码

python - 请求无法保持登录 session