7.1 结构体
- 结构体:是由多个不同类型的数据组成的数据集合。
- 结构体定义:
struct 结构体类型名
{成员类型 成员名
成员类型 成员名
成员类型 成员名} - struct:定义结构体数据类型的关键字。结构体类型名是一种标识符,该标识符代表一个新的数据类型。
- 结构体变量:用结构体数据类型来定义变量。
- 定义结构体变量的方式:
定义结构体变量的方式1:
struct Student
{
int idx;
char name[30];
short age;
} stud1,stud2;
定义结构体变量的方式2:
Student stud3,stud4;
- 引用结构体成员方式: 一种是声明结构体变量后,通过成员运算符“.”引用;另一种是声明结构体指针变量,使用指向运算符“->”引用。
#include <iostream>
#include <string>
using namespace std;
int main(int argc, const char * argv[])
{
struct Student
{
int idx;
char name[50];
short age;
} stud1,stud2={2,"xiaohong",6},*p;
stud1={1,"HS",5}; // 结构体初始化
p = &stud2; // 结构体指针,结构体指针只有变量初始化后才可以使用。
cout<<"idx:"<<p->idx<<endl;
cout<<"age:"<<p->age<<endl;
cout<<"name:"<<p->name<<endl;
cout<<"HS"<<endl;
}
/* 运行结果
idx:2
age:6
name:xiaohong
HS
Program ended with exit code: 0
*/
- 结构体的嵌套:在定义结构体时可以声明其他已定义好的结构体变量,也可以在定义结构体时定义子结构体。