小编Abb*_*bie的帖子

将字符串转换为double c ++

这段代码读取了我在.txt文件中的一些数据的第一行,第一行的值是'6.0',我在循环中读取其余的数据,我的问题是如何转换'line'(a字符串)到一个double(我会称之为'实例'),以便我以后可以在程序中使用它?它需要是一个双倍,所以我可以稍后用其他双重类型进行一些计算.可能是一个非常简单的解决方案,提前谢谢.

注意:我尝试过使用:

#include <stdlib.h>
double instances = atof(line.c_str());
Run Code Online (Sandbox Code Playgroud)

但它返回0而不是正确的值'6.0'

#include <iostream>
#include <string>
#include <fstream>

using namespace std;

int main()
{ 
    string line;
    ifstream infile ("data2.txt");
    if (infile.is_open())
    { 
        getline (infile,line);    
        cout << line << '\n';
        infile.close();
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

c++ string double type-conversion ifstream

1
推荐指数
1
解决办法
4617
查看次数

标签 统计

c++ ×1

double ×1

ifstream ×1

string ×1

type-conversion ×1