gpt4 book ai didi

c++ - 使用 C++ 从 txt 加载 float/double 矩阵

转载 作者:行者123 更新时间:2023-11-30 03:04:29 25 4
gpt4 key购买 nike

这看起来很愚蠢,但我很难加载 txt 文件中的矩阵类型 double。里面有 double 的签名,比如

11707.2 -919.303 -322.04 2260.71 2443.85 -4629.31 3082.64 -4209.86
-1741.71 298.192 -5658.34 2377.03 -3039 -2049.99 2788 -1915.9

等等,我把它放在一个 txt 文件中。

fscanfifstream等各种我发现和熟悉的东西我都用过,就是一直加载不出来。我找到了相关问题,但该程序对我没有帮助。

我需要将这些值保存到 float 组中,但现在我只想能够正确加载它们,所有值看起来都像我写的那些。

请帮忙?有吗?

相关问题:Reading a .txt text file in C containing float, separated by space

最佳答案

标准习语:

#include <fstream>   // for std::ifstream
#include <sstream> // for std::istringstream
#include <string> // for std::string and std::getline

int main()
{
std::ifstream infile("thefile.txt");
std::string line;

while (std::getline(infile, line))
{
// process line, e.g. one matrix per line:

std::istringstream iss(line);
std::vector<double> m;
m.reserve(16);
double d;

if (iss >> d) { m.push_back(d); }
else { /* error processing this line */ }

if (m.size() != 16) { /* error */ }

// use m
}
}

如果您的矩阵数据分布在多行中,请相应地修改代码。

关于c++ - 使用 C++ 从 txt 加载 float/double 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8570157/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com