C++结构体数组详细解析
什么是结构体数组?
结构体数组相当于在一个数组中存储多个结构体对象。在C++中,结构体允许定义多个属性,并可以在一个结构体中同时定义多个属性。而结构体数组则是将多个结构体对象存储在一个数组当中,每个结构体对象都含有相同的属性。
如何定义结构体数组?
定义结构体数组需要以下步骤:
- 定义结构体。可以参照以下示例:
struct Student {
int id;
string name;
int age;
};
- 定义结构体数组。可以参照以下示例:
Student arr[3]; // 定义一个包含3个Student结构体对象的数组
这里我们定义了一个包含3个结构体对象的数组,每个结构体对象都含有id、name、age三个属性。可以通过arr[0]
、arr[1]
、arr[2]
来访问数组中的每个结构体对象。
- 初始化结构体数组。可以参照以下示例:
arr[0].id = 1;
arr[0].name = "张三";
arr[0].age = 20;
arr[1].id = 2;
arr[1].name = "李四";
arr[1].age = 21;
arr[2].id = 3;
arr[2].name = "王五";
arr[2].age = 22;
这里我们对数组中每个结构体对象的属性进行赋值,用于初始化数组。
如何对结构体数组进行操作?
可以参照以下示例,对结构体数组进行遍历:
for (int i = 0; i < 3; i++) {
cout << "id: " << arr[i].id << ", ";
cout << "name: " << arr[i].name << ", ";
cout << "age: " << arr[i].age << endl;
}
这里我们使用for循环遍历结构体数组,并输出每个结构体对象的属性。
另外我们可以参照以下示例,通过函数对结构体数组进行操作:
void print(Student arr[]) {
for (int i = 0; i < 3; i++) {
cout << "id: " << arr[i].id << ", ";
cout << "name: " << arr[i].name << ", ";
cout << "age: " << arr[i].age << endl;
}
}
int main() {
Student arr[3] = {
{ 1, "张三", 20 },
{ 2, "李四", 21 },
{ 3, "王五", 22 }
};
print(arr); // 调用函数
}
这里我们定义了一个函数print
,用于输出结构体数组中每个对象的属性。在main
函数中,我们定义了结构体数组并初始化,然后将数组传入函数中。
总结
通过以上例子,我们总结出对结构体数组的操作步骤:定义结构体;定义结构体数组;初始化结构体数组;对结构体数组进行遍历或通过函数进行操作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++结构体数组详细解析 - Python技术站