1.结构体的概述
结构体是一种数据类型,就是相当于把某一些数据组合成一个整体的属性的属性值。
结构体类型与结构体变量是不同的概念要注意以下几点:
(1).结构体变量可以参加运算,赋值,但结构体类型不可以进行运算,也不能对其赋值。
(2).结构体的成员可以单独使用,作用相当于普通变量。
(3).结构体中的成员本身也可以是一个结构体变量。
(4).结构体类型可以由用户自行定义
(结构体成员总内存的计算,将每个成员内存的空间相加,int 4,short 2,long 4,unsigned 4,unsigned short 2,unsigned long 4.)
2.使用格式
struct 结构体标识符 // struct在这里不能省略 这里的结构体标识符,就相当于变量名标识符,命名规则与变量名标识符规则一样
{
成员变量表; //同一结构体中的 成员变量名不能重名,因为每一个成员变量分别描述的事物的属性是不一样的
//但是不同结构体中的成员可以使用相同的名字
//成员的储存类型也必须是一致的,(如同一种结构体中出现一部分是静态的,一部分是动态的,这样在c语言中是不被允许的
....
}: //花括号后面分号不能省略
struct 结构体名 结构体变量名列表:
//结构体名是可以省略的,在省略结构体名 后 } 后面的;也不要再加上去了(细见后文结构体变量的方法)
#include"stdio.h"
main()
{
struct student
{
int number;
char name[8];
char sex;
int age;
float c_program;
}st1={35013101,"王迪",'F',20,90, },st2={35013112,"阳光",'M',19,80};
printf ("st1:%d,%s,%c,%d,%f\n",st1.number,st1.name,st1.sex,st1.c_program);
printf ("st1:%d,%s,%c,%d,%f\n",st1.number,st1.name,st1.sex,st1.c_program);
}
运行结果:
st1:35013101,王迪,F,0,0.000000
请按任意键继续. . .