一、结构体的定义和使用
1.定义:
struct 结构体名称 {结构体成员};
注意:(1)必须在创建一个对象之前定义好结构体(先定义后使用)。
(2)大括号后要加上分号。
(3)结构体成员默认为public,可包括函数。
2.使用:
struct student{
string name;
int age;
}p3;//第三种创建方式
struct student p1;//第一种创建方式,其中struct可省略;
p1.name="张三";
p1.age=18;
student p2={"李四",19};//第二种创建方式
p3.name="sb";
p3.age=2;
注意:(1).成员变量可更改。
(2).创建的对象可相互复制:p1=p2;
二、结构体数组
struct student{
string name;
int age;
};
//初始化方式
student arr[2]={
{"张三",23};
{"李四",18};
}
//给数组中的元素赋值
arr[2].name="nt";
//遍历数组
for(int i=0;i<2;i++)
{
cout<<arr[i].name<<endl;
cout<<arr[i].age<<endl;
}
三、结构体指针
struct student{
string name;
int age;
};
student s1={"张三",18};
//定义一个结构体指针,其中struct可以省略。
struct student * p=&s1;
//利用符号->来控制数据成员
p->name="李四";
四、结构体嵌套
(1)被包含在内的结构体必须先定义。
(2)对象名.嵌套在内的对象名.成员变量=