c语言中的结构体
结构体的定义
struct 结构类型名{
变量类型 成员1;
变量类型 成员2;
变量类型 成员3;
变量类型 成员4;
...
};
结构体的关键字是struct
结构体类型名说明的是结构体的类型,在定义结构体的时候类型名可以省略。
结构体中所有的成员都放在{
}中,{
}后必须写;
结构体中可以有多个成员,成员的类型可以相同也可以不同。结构体是构造类型的一种。
结构体成员的类型可以是
基本类型char,short,int,long,double,float
数组:char a[3],int b[5]
指针类型:char *,int *,double *,float *,void *
结构体类型:结构体中可以嵌套结构体
结构体中不能写函数,但可以是函数指针。
结构体类型定义变量的方法
struct 结构体类型名 变量;
struct 结构体类型名 *指针变量;
访问内部成员的方法
变量.成员
指针变量->成员
结构体的使用
定义变量方法1:
struct student{
char name[20];
int age;
char sex;
}stu1;
定义变量方法2:
struct student stu2;
结构变量的赋值
方法1:定义变量的同时赋值
struct student{
char name[20];
int age;
char sex;
}stu1 = {
"zhangsan",20,'m'};
struct student stu2 = {
"lisi",22,'w'};
方法2:先定义后赋值
struct student{
char name[20];
int age;
char sex;
}stu1;
struct student stu2;
strcpy(stu1.name,"zhangsan");
stu1.age = 20;
stu1.sex = 'm';
strcpy(stu2