1.什么是结构?结构与数组有什么差别?
结构是一种构造数据类型(或派生数据类型),能把有内在联系的不同类型的数据统一成一个整体,使其相互关联。
数组中的所有元素类型必须是相同的,结构中各成员的数据类型可以不同。
2.有几种结构的定义形式?它们之间有什么不同?
结构定义一般形式:struct 结构名{
类型名 结构成员名1;
类型名 结构成员名2;
...
类型名 结构成员名n;};
或平面坐标结构
struct point{
double x;
double y;
};
或struct {
int x;
int y;
}p1,p2;
第一种和第二种声明了结构point
第三种只定义了两个变量。
3.什么是结构的嵌套?
在一个结构体定义中包含了另一个结构体作为其成员。(先定义成员结构类型再定义主结构类型)
4.什么是结构变量和结构成员变量?如何引用结构成员变量?
结构变量是用户自定义的数据类型,能将多个不同类型的数据组合成一个单一的复合数据结构。
结构成员变量是结构体定义中声明的变量,每个成员变量都有自己的数据类型。
用结构成员操作符“.”
格式:结构变量名.结构成员名
5.结构变量如何作为函数参数使用?
通过值传递
通过指针传递
通过数组传递
修改结构体
6.什么是结构数组?如何定义和使用结构数组?
结构数组就是结构和数组的结合体。(与普通数组不同的是每个数组元素都是一个结构类型的数据,包括多个成员项)
如:struct student students[50]={{101,“zhang”,76,85,78},{102,"wang",83,92,86}};
对结构数组的引用通过数组下标与结构成员操作符“.”相结合
结构数组名[下标].结构成员名 如:students[i].num=101;
7.什么是结构指针?它如何实现对结构分量的操作?
结构指针就是指向结构类型变量的指针。
(1)通过结构变量stu直接访问结构成员。
(2)通过结构指针变量间接访问指针变量所指向的结构变量的各个成员。
1.用*p访问结构成员
2.用指向运算符->访问指针指向的结构成员
8.结构指针是如何作为函数的参数的?
结构指针传递一个地址值,就能实现参数传递。
无人问津的日子,正是登峰造极的好机会!
愿我们都能成为我们想要去成为的人!
悄悄努力然后惊艳所有人!