qt5怎么遍历一个数组变量的值是否在一个结构体数组中
时间: 2024-02-21 13:57:00 浏览: 94
如果要遍历一个数组变量的值是否在一个结构体数组中,可以使用循环遍历数组变量,然后在循环中使用foreach循环和结构体数组的成员变量进行比较。
例如,以下代码定义一个包含多个学生信息的结构体数组和一个整型数组变量,然后遍历整型数组中的每个元素,判断是否有元素的值等于学生信息结构体数组中某个学生的年龄:
```
struct Student {
QString name;
int age;
QString gender;
};
int ageList[] = {18, 20, 22};
Student studentList[] = {
{"Tom", 18, "Male"},
{"Mary", 19, "Female"},
{"John", 20, "Male"},
{"Lucy", 21, "Female"},
{"David", 22, "Male"}
};
for(int i = 0; i < sizeof(ageList) / sizeof(int); i++) {
bool found = false;
int age = ageList[i];
foreach(Student stu, studentList) {
if(stu.age == age) {
found = true;
qDebug() << "Found student with age" << age << ":" << stu.name;
break;
}
}
if(!found) {
qDebug() << "No student found with age" << age;
}
}
```
以上代码中,通过循环遍历整型数组ageList中的每个元素,然后在循环中使用foreach循环遍历学生信息结构体数组studentList中的每个元素,比较每个学生信息的年龄是否等于当前整型数组元素的值,如果相等则输出该学生的信息。
这样就可以遍历一个数组变量的值是否在一个结构体数组中了。
阅读全文