结构体是C++中用于组织不同类型数据的自定义类型,使用struct关键字定义,语法为:struct 结构体名 { 成员列表 }; 定义后需加分号。例如定义Student结构体包含id、name、age和score成员;通过点操作符访问成员,如s1.id = 1001; 可将结构体变量作为函数参数或返回值传递;C++还支持在结构体中定义构造函数进行初始化,如Student(int _id, const char* _name) { id = _id; strcpy(name, _name); },创建时可直接初始化Student s(1002, "李四"); 结构体适用于表示复合数据如坐标、日期、人员信息等,是C++基础且实用的特性。

在C++中,结构体(struct)是一种用户自定义的数据类型,可以包含多个不同类型的数据成员。它常用于组织相关数据,使程序更清晰、易于管理。
结构体的基本定义方式
使用 struct 关键字来定义一个结构体。基本语法如下:
struct 结构体名 {
数据类型 成员1;
数据类型 成员2;
// 更多成员...
};
注意:定义结束后要加分号。
例如,定义一个表示学生信息的结构体:
立即学习“C++免费学习笔记(深入)”;
struct Student {
int id;
char name[50];
int age;
float score;
};
声明结构体变量并访问成员
结构体定义后,就可以声明该类型的变量,并通过点操作符(.)访问其成员。
#includeusing namespace std; struct Student { int id; char name[50]; int age; float score; };
int main() { // 声明结构体变量 Student s1;
// 给成员赋值 s1.id = 1001; strcpy(s1.name, "张三"); s1.age = 18; s1.score = 92.5; // 输出信息 cout zuojiankuohaophpcnzuojiankuohaophpcn "学号: " zuojiankuohaophpcnzuojiankuohaophpcn s1.id zuojiankuohaophpcnzuojiankuohaophpcn endl; cout zuojiankuohaophpcnzuojiankuohaophpcn "姓名: " zuojiankuohaophpcnzuojiankuohaophpcn s1.name zuojiankuohaophpcnzuojiankuohaophpcn endl; cout zuojiankuohaophpcnzuojiankuohaophpcn "年龄: " zuojiankuohaophpcnzuojiankuohaophpcn s1.age zuojiankuohaophpcnzuojiankuohaophpcn endl; cout zuojiankuohaophpcnzuojiankuohaophpcn "成绩: " zuojiankuohaophpcnzuojiankuohaophpcn s1.score zuojiankuohaophpcnzuojiankuohaophpcn endl; return 0;}
青辰印刷综合业务管理系统(含网站WEB程序)2.0下载易学易用:友好的系统操作界面,无须具备专业知识,即可熟练的使用系统。功能完善:具备新建、修改、明细、审批、导入、导出、删除、批量、打印等功能。模型开发:自定义表单字段选项零代码二次开发,可无限扩展后台功能模块。 维护方便:基于互联网技术B/S体系结构,实施快速,极大的减少系统升级维护工作。售后保证:专业的技术研发团队,可提供可靠的产品迭代、版本升级和技术支持服务。超低成本:一次投入终身使用、用户不
结构体与函数
结构体变量可以作为参数传递给函数,也可以作为返回值。
示例:用函数打印学生信息
void printStudent(Student s) { cout << "姓名:" << s.name << ",成绩:" << s.score << endl; }调用时直接传入结构体变量即可。
结构体中使用构造函数(C++特性)
C++允许在结构体中定义构造函数,用于初始化成员。
struct Student { int id; char name[50];// 构造函数 Student(int _id, const char* _name) { id = _id; strcpy(name, _name); }};
创建变量时可直接初始化:
Student s(1002, "李四");基本上就这些。结构体在处理复合数据时非常实用,比如保存坐标、日期、人员信息等。掌握它的定义和使用,是学习C++的基础一步。不复杂但容易忽略细节,比如分号和成员访问方式。多写几次就熟练了。











