概述
结构体
定义
C语言允许用户自己建立由不同类型数据组成的组合型的数据结构,它称为结构体。在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。结构体同时也是一些元素的集合,这些元素称为结构体的成员(member),且这些成员可以为不同的类型,成员一般用名字访问。
一般形式
struct 结构体名
{
成员表列
};
例如
struct Date
{
int month;
int day;
int year;
};
(最后的“;”一定不要忘记)
定义结构体变量
1.先声明结构体,在定义该类型的变量
struct Date
{
int month;
int day;
int year;
};
struct Student student1,student2
2.在声明类型的同时定义变量
```c
struct data
{
int day;
int month;
int year;
} time1,time2;
3.不指定类型名而直接定义结构体类型变量
struct
{
char name[20]; //学生姓名
char sex; //性别
long num; //学号
float score[3]; //三科考试成绩
} person1,person2; //定义该结构体类型变量
这种方法指定了一个无名的结构体类型,显然不能再以此结构体类型去定义其他变量。这种方式用的不多
结构体变量的初始化和引用
1、在定义的时候进行初始化
struct STUDENT
{
char name[20];
int num;
struct AGE birthday;
float score;
};
int main()
{
struct STUDENT student1 = {"小明", 1207041, {1989, 3, 29}, 100};
return 0;
}
2、对某一成员初始化
结构体变量名.成员名
例如:student1.num=190704;
3、 如果结构体类型中的成员也是一个结构体类型,则要用若干个“.”,一级一级地找到最低一级的成员。因为只能对最低级的成员进行操作。
如:student.birthday.mouth(结构体变量student1中的成员birthday中的成员mouth)
4、对结构体变量的成员可以像普通变量一样进行各种运算
例如:
student2.score=student1.score;(赋值运算)
sum= student2.score+student1.score;(加法运算)
student1.age++;(自加运算)
5、同类的结构体变量可以互相赋值
例如:student1=student2;//假设student1和student2已定义为同类型的结构体变量
6、可以引用结构体变量成员的地址,也可以引用结构体变量的地址
例如:
scanf(“%d”,&student1.num);(输入student1.num的值)
printf("%o",&student1);(输出结构体变量student1的起始地址)
最后
以上就是轻松煎饼为你收集整理的结构体的基本知识结构体的全部内容,希望文章能够帮你解决结构体的基本知识结构体所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复