C++结构体与联合体:定义与应用示例

需积分: 15 1 下载量 192 浏览量 更新于2024-08-19 收藏 496KB PPT 举报
本文介绍了C++中的结构体(struct)这一重要的数据类型,它允许我们将不同类型的变量组合成一个整体,以便更好地管理和操作相关联的数据。结构体在编程中广泛应用于表示具有多个属性的对象,例如汽车类型、图书类型、学生类型等。 在C++中,结构体是一种自定义的数据类型,它通过`struct`关键字定义。结构体可以包含一个或多个不同类型的成员,每个成员可以是基本数据类型(如char、int、float)或其他复杂类型。定义结构体的语法如下: ```cpp struct 结构体名 { 子类型1; 子类型2; 子类型3; …… }; ``` 在结构体定义之后,我们可以像声明其他类型变量一样声明结构体变量。例如,定义一个描述汽车的结构体`auto`: ```cpp struct auto { char brand[20]; // 品牌 char model[20]; // 型号 char color[20]; // 颜色 float cylinder[20]; // 排量 char transmission[20]; // 变速箱 float price; // 价格 }; ``` 需要注意的是,结构体定义后,需要以分号`;`结束。结构体成员的命名规则与普通变量相同,关键字`struct`不可省略。结构体名可以用来定义变量,例如: ```cpp struct auto myCar; ``` 结构体变量的成员可以通过`.`运算符进行访问,如`myCar.brand`表示访问`myCar`这个汽车结构体的`brand`成员。同时,结构体变量还可以通过指针进行操作,这在处理大量结构体数据时非常有用: ```cpp auto* ptr = &myCar; ``` 结构体数组可以用来存储多个相同类型的结构体,这对于处理一组具有相同属性的对象非常方便。例如,定义一个汽车数组: ```cpp struct auto cars[10]; ``` 结构体数组的元素可以分别初始化,或者通过循环结构逐个设置成员值。 通过结构体,我们可以创建更复杂的类型,比如描述航班信息的结构体: ```cpp struct Flight { char flightNumber[20]; // 航班号 char airline[20]; // 航空公司 char origin[20]; // 始发港 char destination[20]; // 目的地 char departureDate[20]; // 起飞日期 char departureTime[20]; // 起飞时间 int seats; // 座位数 int bookedSeats; // 已预订数 float fare; // 票价 }; ``` 总结,C++的结构体提供了组合多种类型数据的能力,使我们能够创建更加灵活且符合实际需求的数据结构,对于组织和管理复杂数据非常有效。无论是表示一个简单的对象,如汽车或图书,还是表示复杂的数据实体,如航班信息,结构体都是不可或缺的工具。