结构体与共同体
结构体
在C语言中,可以使用结构体(Struct)来存放一组不同类型的数据。定义结构体的一般形式为:
struct 结构体名 {
成员列表// 类型说明符 成员名
};
每个成员都是结构体的组成部分,有名字也有数据类型。结构体是一种构造数据类型(复杂数据类型),由若干不同类型的变量(数据)组成。每个变量都是结构体的成员(member),每个成员可以是基本数据类型,也可以是构造类型。
结构体变量
结构体也是一种数据类型,可以用来说明变量。
struct stu stu1,stu2;
定义了两个变量stu1和stu2,他们都是stu类型,都是由4个成员组成。注意关键字struct不能少。结构体的各个成员在内存中是连续存储的
成员的获取和赋值
在C语言中,使用点号.来获取结构体中的一个成员,一般格式为:
结构变量名.成员名
代码示例#2.7.1-结构体
#include <stdio.h>
#define STU struct stu
int main()
{
STU {
char *name; //字符串类型的姓名
long id;
char sex;
float score;
};
STU stu1;
stu1.name = "小明";
stu1.id = 3120100888l;
stu1.sex = 'M';
stu1.score = 100;
printf("Hello everyone! My name is %s, a naughty boy, but with
good scores(%.2f) and top No.(%d)!", stu1.name, stu1.score, stu1.num);
}