c语言之结构体知识小结

tech2024-10-09  15

结构体知识粗练

结构是一种构造数据类型,且各成员类型可以不同。

(1)  学生信息结构定义:

struct student {

  int num;

  char name [10];

  int computer,math,english;

  double average;

};

在主函数中定义结构变量:struct student s1,math; 结构变量可以通过结构成员操作符“.”对其某个成员进行引用。(s1.average)若结构变量类型相同,可以直接赋值:max=s1.

结构是c语言中的一种构造数据类型,同时也是变量的结合,可以按照对基本数据类型的操作方法单独使用其成员变量。struct是定义结构类型的关键字。

结构的定义以分号结束,这是因为c语言将结构的定义看作一条语句。

(2)嵌套定义结构类型

struct address{

  char city [10];

  char street [20];

  int code;

  int zip;

};

struct nest_student  {

````

  struct address addr;

};

其中addr被定义成结构类型struct address,也即一个结构的成员被定义为另一个结构类型。(先定义成员的结构类型,再定义主结构类型)

(3)c语言中定义结构变量

···单独定义,先定义结构类型,再定义这种结构类型的变量。

···混合定义,在定义结构类型的同时定义结构变量;

struct student {

  int num;

  char name [10];

  int computer,math,english;

  double average;

} s1,s2;

```无类型名定义,在定义结构变量时省略结构名

(4)结构变量的初始化

struct student s1= {101,"zhang",78,87,85};各数据项之间用逗号隔开数据项对应赋给结构变量内各个成员,且要于数据类型一致。(sizeof的运算对象可以是结构类型名,也可以是结构变量名,计算结果以字节为单位。)

最新回复(0)