目录
1:定义结构体
C 数组允许定义可存储相同类型数据项的变量,结构是 C 编程中另一种用户自定义的可用的数据类型,它允许您存储不同类型的数据项。
结构体表示一条记录。
定义结构体:
struct ty
{
num1
num2
num3
}all;
其中ty指的是结构标签。
num1等是标准的变量定义,比如 int i; 或者 float f,或者其他有效的变量定义。
all是结构变量,定义在结构的末尾,最后一个分号之前,您可以指定一个或多个结构变量。
比如,声明今年TGA最佳游戏提名:
struct TGA_games
{
char A Plague Tale: Requiem;
char Elden Ring;
char God of War: Ragnarok;
char Horizon Forbidden West;
char stray;
Xenoblade Chronicles 3;
}TGA;
一般情况下,这三个部分:ty,num,all;至少要出现两个。
2:结构体变量的初始化、
和其它类型变量一样,对结构体变量可以在定义时指定初始值。
#include <stdio.h>
struct games{
char title[6];
char name[6];
}game={"God","cod19"}
int main()
{
printf("%s %s",game.title,game.name);
return 0;
}
3:访问成员
为了访问结构的成员,我们使用成员运算符(.),成员访问运算符是结构变量名称和我们要访问的结构成员之间的一个句号。您可以使用 struct 关键字来定义结构类型的变量。
就像上面例子展示的,要指向一个结构体的成员,即all.num。
除了定义初始化成员,还可以不初始化。如下面的例子,声明结构体之后,在主函数下面声明s作为all,来指向结构体成员。
#include <stdio.h>
struct per
{
int num[3];
char name[3];
int old[3];
int pay[3];
char place[3];
};
int main()
{
struct per s;
scanf("%d %s %d %d %s",&s.num,&s.name,&s.old,&s.pay,&s.place);
printf("%d %s %d %d %s",s.num,s.name,s.old,s.pay,s.place);
return 0;
}
这一操作在很多地方用的到,比如统计员工的姓名,编号,家庭地址等信息是可以用结构体更为方便的表示。