在C语言中,结构体(Struct)是一种自定义的数据类型,它允许你将多个不同类型的变量组合成一个单一的类型。结构体在组织和处理具有实体属性的数据时非常有用,如学生、汽车、坐标点等。它们是数据封装的基础。
定义结构体
结构体通过 struct
关键字定义。一个结构体可以包含多个不同类型的成员(如 int
、float
、char
等)。这些成员可以是基本数据类型、数组、甚至是其他结构体。
基本结构体定义语法:
cpp
struct StructName{
dataType member1;
dataType member2;
...
}
struct
是关键字。StructName
是结构体名称。dataType member1
,dataType member2
, ... 是结构体成员。
示例:
cpp
struct Pint{
int x;
int y;
};
这定义了一个名为 Point
的结构体,包含两个整型成员 x
和 y
。
使用结构体
声明结构体变量
在定义结构体后,你可以像使用标准数据类型一样使用它来声明变量。
访问结构体成员
可以使用点(.
)运算符来访问结构体的成员。
示例:
cpp
struct Point p1,p2;
p1.x=10;
p1.y=20;
结构体指针
当有一个指向结构体的指针时,可以使用箭头(->)运算符来访问结构体的成员。
示例:
cpp
struct Point *ptr=&p1;
ptr->x=30;
ptr->y=40;
typedef
与结构体
可以使用 typedef
关键字为结构体创建一个新的别名,从而使得声明更加简洁。
cpp
typedef struct Point{
int x;
int y;
}Point;
Point p1,p2;
在这个例子中,Point
现在可以直接用来声明新的结构体变量,而无需在前面加 struct
关键字。