结构体介绍
结构体(struct)是C语言(以及许多其他编程语言)中的一种复合数据类型,用于将多个不同类型的数据组合成一个整体。通过结构体,我们可以创建具有多个数据成员的对象,这些成员可以是基本数据类型(如int、float、char等),也可以是其他结构体类型。
(1)定义
struct 结构体名
{
成员1的类型 变量名;
成员2的类型 变量名;
};
(2)例如:
struct Student {
char name[50];
int age;
float score;
};
在这个例子中,我们定义了一个名为Student 的结构体,它有三个成员:一个字符数组 name
用于存储学生的名字,一个整数 age 用于存储学生的年龄,以及一个浮点数 score
用于存储学生的分数。
(2)定义结构体变量
struct 结构体名 结构变量名;
(1)举例
struct Student stu1;
strcpy(stu1.name, "张三");
stu1.age = 20;
stu1.score = 90.5;
在这个例子中,我们创建了一个名为 stu1
的 Student
类型的变量,并分别给它的 name
、age
和 score
成员赋值。
(3)结构体指针
struct 结构体名 *类型名=NULL;
(1)举例
struct Student s={20240328,'张三'};
struct Student *p=&s;
(4)访问成员变量
(1)结构体变量访问
变量名.成员变量名
stu.name
(2)指针变量访问
指针名->成员变量
ptr->name
结构体使用案例:
链表
单项链表结构
定义链表表头
struct Head
{
int length;
struct Node* first;
};
链表节点定义
struct Node
{
int data;
struct Node* next;
};
访问链表元素
Struct Node* getNode(struct* Head,int index)
{
if(index<0||index>=Head->length)
{
return NULL;
}
struct Node *p=head->first;
int i=0;
while(i<index)
{
p=p->next;
i++;
}
return p;
}
后面插入删除链表中元素试着练习。
读者记:
亲爱的读者,非常感谢您抽出宝贵的时间阅读这篇文章。您的支持和关注是我们前进的动力,也是我们不断提供优质内容的源泉。