一、什么是结构体?
结构体也叫结构,是由一系列具有相同类型或不同类型的数据构成的数据集合。
二、结构体的声明
struct tag
{
member_list;
}variable_list;
//比如描述一个学生
struct Stu
{
char name[20];//姓名
int age;//年龄
char sex[3];//性别
char id_nm[2o];//学号
};//分号不可以丢掉,切记!!!
特殊的声明:结构体在声明的时候可以不完全声明,比如:
struct
{
int a;
char b;
float c;
}x;
struct
{
int a;
char b;
float c;
}a[20], *p;
以上两个结构体在声明的时候都省略了结构体的标签(tag)。
如果在这个时候,将结构体x的地址赋值给结构体指针p会发生什么呢?
p = &x;
在LInux平台下显示,类型不匹配,也就是说原本想表达的意思用一个结构体定义两个变量,但是由于未加标签,系统认为这两个不是相同的类型,所以在进行赋值的时候系统会出现警告。所以在我们使用结构体的时候尽量不要省略掉结构体标签,方便自己,也方便别人。
三、结构体的成员
结构体的成员可以是标量、数组、指针,甚至是其他结构体 。
访