通过函数将文件读取到矢量中
Reading file into vector through function
我正在尝试将 txt 文件读入函数 readIn 中的向量中。我一辈子都无法让它工作。要么我收到以下消息"错误:'&'标记之前的预期主表达式 readIn(ifstream& infile, vec);",或者根本不调用该函数。
int main() {
const int MAXSIZE = 100;
vector<int> vec (MAXSIZE);
ifstream infile;
infile.open("in9.3.txt");
readIn(ifstream& infile, vec);
return(0);
}
void readIn(ifstream& infile, vector<int> &vec) {
int a, count;
count = 0;
while (!infile.eof()) {
infile >> a;
vec.at(count) = a;
count++;
}
infile.close();
vec.resize(count);
}
传递给函数时不得指定参数的类型。 你写的是不正确的:
readIn(ifstream& infile, vec); // error
请注意,您正在尝试传递变量infile
,该变量在main
中定义。 编译器抱怨您以ifstream&
为前缀。 正确的调用是:
readIn(infile, vec);
还要注意,由于函数是在main
之后定义的,因此在main
之前必须有一个函数声明。 目前尚不清楚您是否这样做了,因为您还没有展示完整的程序。 在任何情况下,您都可以将整个定义移到main
之前,或者只添加以下行:
void readIn(ifstream&, vector<int>&);
相关文章:
- 使用新行和不使用新行读取文件
- 读取文件并输入到矢量中
- 读取文件的最后一行并输入到链接列表时出错
- 为什么在读取文件大小时文件IO速度会发生变化
- 读取文件时运行时的未知行为
- 如何逐行读取文件,每行中的内容都用空格分隔并将其写入新文件中
- 读取文件中所有可能的十六进制 16 字节序列并打印每个序列
- C++ 读取文件读取文件不正确
- 读取文件并将其存储在unordered_map中时出现问题
- 读取文件时无法使用 OpenMP 获得加速
- 使用istringstearm和get行缓慢读取文件
- 如何继续读取不同功能中的文件,而不是从头开始再次读取文件?
- 读取文件时引发异常
- 从标准输入读取文件后读取用户输入
- 在读取文件后重置句柄
- 如何在C++编译时读取文件?
- std::ifstream 在读取文件中最后一项时设置 eofbit,但仅在读取数值类型时发生
- 读取文件在第二次调用时返回INVALID_HANDLE
- 通过指针读取文件
- 逐行读取文件,并将数据插入变量和数组中