C++结构体嵌套结构体数组
作者:野牛程序员:2023-08-04 09:12:07 C++阅读 2640
在 C++ 中,可以在结构体中嵌套结构体数组。下面是一个示例代码:
#include <iostream> struct Address { int streetNumber; std::string city; }; struct Person { std::string name; int age; Address addresses[2]; // 嵌套的 Address 结构体数组 }; int main() { Person person1 = { "John", 30, {{123, "New York"}, {456, "San Francisco"}} }; Person person2 = { "Alice", 25, {{789, "London"}, {101, "Paris"}} }; // 输出 person1 的信息 std::cout << "Person 1:" << std::endl; std::cout << "Name: " << person1.name << std::endl; std::cout << "Age: " << person1.age << std::endl; std::cout << "Address 1: " << person1.addresses[0].streetNumber << " " << person1.addresses[0].city << std::endl; std::cout << "Address 2: " << person1.addresses[1].streetNumber << " " << person1.addresses[1].city << std::endl; std::cout << std::endl; // 输出 person2 的信息 std::cout << "Person 2:" << std::endl; std::cout << "Name: " << person2.name << std::endl; std::cout << "Age: " << person2.age << std::endl; std::cout << "Address 1: " << person2.addresses[0].streetNumber << " " << person2.addresses[0].city << std::endl; std::cout << "Address 2: " << person2.addresses[1].streetNumber << " " << person2.addresses[1].city << std::endl; return 0; }
在上述示例中,定义了两个结构体:Address
和 Person
。Address
结构体表示地址信息,包含一个整数变量 streetNumber
和一个字符串变量 city
。Person
结构体表示人员信息,包含一个字符串变量 name
、一个整数变量 age
,以及一个嵌套的 Address
结构体数组 addresses
。
在 main()
函数中,创建了两个 Person
结构体实例 person1
和 person2
,并初始化它们的成员。然后,通过访问嵌套结构体数组的成员,输出每个人员的信息及其地址信息。
运行上述代码将输出以下内容:
Person 1: Name: John Age: 30 Address 1: 123 New York Address 2: 456 San Francisco Person 2: Name: Alice Age: 25 Address 1: 789 London Address 2: 101 Paris
这样就可以在结构体中嵌套结构体数组,用于表示更复杂的数据结构。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
- 上一篇:C++怎么输出结构体数组
- 下一篇:C++结构体转char数组