如何知道提txt文件里的结构体数组的最大下标
时间: 2023-06-24 18:03:21 浏览: 83
要知道txt文件中结构体数组的最大下标,需要先读取文件中的数据,然后遍历结构体数组,找到最大的下标值。以下是一个简单的示例代码:
```c++
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
using namespace std;
struct Person {
string name;
int age;
};
int main() {
vector<Person> people;
string filename = "data.txt";
// 读取文件中的数据
ifstream infile(filename);
if (!infile) {
cout << "无法打开文件:" << filename << endl;
return 1;
}
while (!infile.eof()) {
Person p;
infile >> p.name >> p.age;
if (!infile.fail()) {
people.push_back(p);
}
}
// 遍历结构体数组,找到最大下标值
int max_index = -1;
for (int i = 0; i < people.size(); i++) {
if (i > max_index) {
max_index = i;
}
}
cout << "结构体数组的最大下标是:" << max_index << endl;
return 0;
}
```
在这个示例中,我们先读取了名为 "data.txt" 的文件中的数据,然后使用一个vector存储了每个人的信息,最后遍历 vector,找到最大下标值。注意,这个示例假设每行文件中只有一个人的信息,且每个人的信息的格式为 "name age"。如果你的文件中的格式不同,你需要相应地调整代码。
阅读全文