一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第三天,点击查看活动详情。
结构体与共用体
前言
接上篇,今天继续学习结构体~
知识点3--结构体变量的引用
在定义了结构体变量以后,当然可以引用这个变量。但应遵守以下规则:
-
不能将一个结构体变量作为一个整体进行输入和输出
例如:打印student1的各个变量的值
printf("%d,%s,%d,%f,%\n",student1);//??? 这是不对滴
正确引用结构体变量中成员的方式为:
结构体变量名.成员名
例子:将boy1中的全部变量赋给boy2,看看能否实现
//结构体_1_Emp02 #include<stdio.h> int main(){ struct student{ int num; char *name; char sex; float score; }boy1,boy2; boy1.num = 007; boy1.name = "Jane"; printf("Please input sex and score\n"); scanf("%c %f",&boy1.sex,&boy1.score); boy2 = boy1; printf("Number = %d\nName = %s\n",boy2.num,boy2.name); printf("Sex = %c\nScore = %f\n",boy2.sex,boy2.score); }
结果输出:
Please input sex and score
M
99.8
Number = 7
Name = Jane
Sex = M
Score = 99.800003
-
如果成员本身又属一个结构体类型,则要用若干个成员运算符,一级一级地找到最低的一级的成员。只能对最低级的成员进行赋值或存取以及运算。
对上面定义的结构体变量student1,可以这样访问各成员:
student1.num;
student1.brithday.month;
-
对结构体变量的成员可以像普通变量一样进行各种运算(根据其类型决定可以进行的运算)。
student2.score = student1.score; sum = student1.score + student2.score; student1.age++; ++student2.age;
-
可以引用结构体变量成员的地址,也可以引用结构体变量的地址。
这是因为:数组第一个元素的地址是数组的首地址 同理
声明
小编是跟着b站上的小甲鱼视频学习的,希望每天都能进步一点点!
链接附上:C语言学习之小甲鱼视频链接