1.结构体数组
#include<iostream>
#include<string>
using namespace std;
struct student
{
string name;
int age;
int score;
};
int main()
{
student arr[] = {
{"xaoming",12,98},
{"xiaohong",34,90},
{"xiaohong ",23,90}
};
for (int i = 0; i < 3; i++)
{
cout << "姓名:" << arr[i].name << "年龄:" << arr[i].age << "分数:" << arr[i].score << endl;
}
}
2.结构体指针
#include<iostream>
#include<string>
using namespace std;
struct student
{
string name;
int age;
int score;
};
int main()
{
student s = { "xiaoming",12,90 };
student* p = &s;
cout << p->name << " " << p->age <<" "<< p->score << endl;
}
3.结构体嵌套
#include<iostream>
#include<string>
using namespace std;
struct employee
{
string name;
int age;
int score;
};
struct employer
{
string name;
int id;
int age;
struct employee em;
};
int main()
{
employer emp;
emp.name = "xiaoming";
emp.id = 1134;
emp.age = 45;
emp.em.age = 23;
emp.em.name = "xiaohong";
emp.em.score = 90;
cout << "老板的姓名、工号、年龄:" << emp.name <<" " << emp.id <<" " << emp.age << endl;
cout << "员工的姓名、年龄、分数:" << emp.em.name <<" "<< emp.em.age <<" " << emp.em.score << endl;
}
4.结构体做参数
#include<iostream>
#include<string>
using namespace std;
struct student
{
string name;
int age;
};
void prints(struct student*p)
{
cout << "姓名:" << p->name << endl;
cout << "年龄:" << p->age << endl;
}
int main()
{
struct student s;
s.name = "daming";
s.age = 23;
prints(&s);
}
另一种不变。
5.结构体中的const
const加在函数参数前面,
mian函数中定义好了,前面函数中不能修改,只读