一:结构的概念
结构是C语言中一种新的构造数据类型,它能够把有内在联系的不同类型的数据汇聚成一个整体,使它们相互关联;同时,结构又是一 个变量的集合, 可以按照对基本数据类型的操作方法单独使用其成员变量。
二:结构的一般形式
struct 结构名{
类型名 结构成员名1;
类型名 结构成员名2;
.......
类型名 结构成员名n;
} ; // 分号!!!!
嵌套定义:一个结构的成员被定义成另一个结构类型(先定义成员的结构类型,再定义主结构类型)
三:结构的定义和初始化
1:单独定义 2:混合定义 3:无类型名定义
struct student{ struct student{ struct {
int num; int num; int num;
char name; char name; char name;
}; }s1,s2; }s1,s2;
struct student s1,s2;
初始化:struct student s1={101,"zhang"}
四:结构变量的使用
1:结构变量成员的引用
结构变量名.结构成员名(例如s1.num)
2:结构变量的整体赋值
s2=s1(前提是相同结构类型的变量)
3:结构变量作为函数参数
double average(struct student s1)
五:结构数组
概念:结构数组是结构与数组的结合,与普通数组的不同之处在于每个数组元素都是一个结构类型的变量
定义:struct student s[50]
初始化:struct student s[50]={
{101,"zhang"},{102,"wang"}
}
结构数组元素的成员引用:结构数组名[下标].结构成员名
数组元素之间可以直接赋值:s[i]=s[j]
六:结构指针
概念:结构指针就是指向结构类型变量的指针
struct student s1={101,"zhang"},*p;
*p=&s1;
结构指针的使用:①用*p访问结构成员 (*p).num
②用指向运算符“->”访问指针指向的结构成员 p->num
结构指针作为函数参数:int score(struct student *p)
标签:struct,s1,num,student,成员,chap9,结构 From: https://www.cnblogs.com/yyt130/p/17005669.html