gpt4 book ai didi

c++ - 如何将txt文件读入vector并cout文件?

转载 作者:行者123 更新时间:2023-11-28 00:28:06 28 4
gpt4 key购买 nike

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

using namespace std;


int main()
{
vector<int> temp;

ifstream infile;
infile.open("numbers");

if (infile.fail())
{
cout << "Could not open file numbers." << "\n";
return 1;
}

int data;
infile >> data;
while (!infile.eof()) {
temp.push_back(data);
infile >> data;
}

cout << data << " " << endl;



}

我只是想使用 vector 从文本文件“numbers”中找出所有数字。

15
10
32
24
50
60
25

我的经验几乎为零,关于无法打开的原因的一些指导将非常有帮助。

最佳答案

您的代码无法正常工作,因为您没有尝试从 vector 打印任何内容?

How do I print a vector?

首先,您必须了解如何 打印 vector 。代码的最后一行,尤其是这一行:

cout << data << " " << endl;

仅打印出文本文件中的最后一个整数。在执行输入的循环中,infile >> data覆盖 data 的每个先前值并将其分配给当前从文件中读取的值。结果是当循环结束时,data将等于最后读取的值,特别是 25查看您的文件。

operator<<() 没有过载这将允许你做类似 cout << temp 的事情,尽管您可以自己实现一个。有几种打印 vector 的方法,最简单的是简单的循环:

for (unsigned i = 0; i < temp.size(); ++i)
std::cout << temp[i] << " ";

奖励:打印所有整数的更快方法是打印 data从循环内部。还有@KerrekSB 的回答。

关于c++ - 如何将txt文件读入vector并cout文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24127955/

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