c++ - 如何将txt文件中的多个值输入数组C++

标签 c++ arrays iostream

我希望将 .txt 文件的各个输入输入到我的数组中,其中每个输入由空格分隔。然后计算这些输入。如何将 .txt 文件中的多个值输入到数组中?

    int main()
{
    float tempTable[10];

    ifstream input;
    input.open("temperature.txt");

    for (int i = 0; i < 10; i++)
    {
        input >> tempTable[i];
        cout << tempTable[i];
    }

    input.close();

    return 0;
}

根据我在这里写的内容,我希望文件的输入按照计划进行,每个值都进入 tempTable[i],但是当运行程序时输出极端数字,即 -1.3e9。

temperature.txt文件如下:

25 20 11.2 30 12.5 3.5 10 13

最佳答案

您的文件包含 8 个元素,您迭代了 10 次。

您应该使用vectorlist 并迭代while(succeded)

#include <vector>
#include <fstream>
#include <iostream>
int main()
{
    float temp;    
    std::ifstream input;
    input.open("temperature.txt");
    std::vector<float> tempTable;
    while (input >> temp)
    {
        tempTable.push_back(temp);
        //print last element of vector: (with a space!)
        std::cout << *tempTable.rbegin()<< " ";
    }
    input.close();
    return 0;
}

关于c++ - 如何将txt文件中的多个值输入数组C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59127647/

相关文章:

c++ - 无法使用 while 运行循环

c++ - const_cast 是否返回尖括号内指定的类型

c++ - 如果相似元素已存在,则从 std::list 中移除元素

java - 这是 "Increase"ArrayList 大小的最佳方法吗?

php - 使用键名但空值初始化关联数组

c++ - 使用流的字符串连接返回垃圾

C++ 需要在许多目录中包含头文件

python - Python List List 切片列表

c++ - std::ios_base::sync_with_stdio 如何影响流缓冲?

c++ - 静态存储持续时间初始化