一、结构体类型的概念既定义
1.1 基本概念
构造类型:
不是基本类型的数据结构也不是指针,它是若干个相同或不同类型的数据构成的集合
描述一组具有相同类型数据的有序集合,用于处理大量相同类型的数据运算有时我们需要将不同类型的数据组合成一个有机的整体,以便于引用。如:
一个学生有学号/姓名/性别/年龄/地址等属性
int nunn;
char name[20];
char sex;
int age;
char addr[30];
显然单独定义以上变量比较繁琐,数据不便于管理
数组用于保存多个相同类型的数据
结构体用于保存多个不同类型的数据
1.2 结构体的概念
结构体是一种构造类型的数据结构,
是一种或多种基本类型或构造类型的数据的集合。
1.3 结构体类型的定义方法
咱们在使用结构体之前必须先有类型,然后用类型定义数据结构
这个类型相当于一个模具
(1)先定义结构体类型,再去定义结构体变量
stuct 结构体类型名
{
成员列表
};
struct stu
{
int num;
char name[20];
char sex;
};
(2)在定义结构体类型的时候顺便定义结构体变量,以后还可以定义结构体变量
struct 结构体类型名{
成员列表:
}结构体变量 1.变量 2:
struct 结构体类型名 变量 3,变量 4;
struct stu
{
int num;
char name[20];
char sex;
}Wang,Zhang,Li;
struct stu xiaoming,xiaohong;
(3)在定义结构体类型的时候,没有结构体类型名,顺定义结构体变量,因为没有类型名,所以以后不能再定义相关类型的数据了
struct{
成员列表;
}变量 1,变量 2;
(4)通常咱们将一个结构体类型重新起个类型名,用新的类型名替代原先的类型
typrdef struct
{
成员列表;
}重新定义的结构体类型名;
注:typedef主要用于给一个类型取别名
typedef struct stu
{
int num;
char name[20];
char sex;
}STU;
二、结构体变量的定义初始化及使用
1、结构体变量的定义和初始化
结构体变量,是个变量,这个变量是若干个数据的集合
注:
(1):在定义结构体变量之前首先得有结构体类型,然后在定义变量
(2):在定义结构体变量的时候,可以顺便给结构体变量赋初值,被称为结构体的初始化
(3):结构体变量初始化的时候,各个成员顺序初始化
struct stu{
int num;
char name[20];
char sex;
int age;
}zhangsan={20,"张三",m,18};