01 struct
为啥要自定义数据类型?
C语言编译器默认定义的内存不符合实际的资源形式。
自定义数据类型的形式
自定义 = 基本元素的集合
02 例如 在操纵某单片机的看门狗定时器时里面的寄存器
通过查表得知看门狗寄存器的资源组。
如何操作这样的资源组呢?
就可以用自定义的数据类型。
看门狗寄存器的资源表
把这张表定义一个内除去描述:
struct 变量名
{
unsigned int a;// 描述数据一般是无符号数,
unsigned int a;// 描述数据一般是无符号数,
unsigned int a;// 描述数据一般是无符号数,
unsigned int a;// 描述数据一般是无符号数,
char b;
flaot s;
}
// 结构体定义的形式
struct 结构体名称{
整形变量;
浮点型变量;
字符串;
};
//例子
struct abc{
unsigned int a;// 描述数据一般是无符号数,
unsigned int a;// 描述数据一般是无符号数,
unsigned int a;// 描述数据一般是无符号数,
unsigned int a;// 描述数据一般是无符号数,
float 吧=3.14;
char = 'a';
}// 结构体声明
----------------------------------------------------------------
struct abc My_Objection //定义一个叫结构体变量 叫My_Objection
----------------------------------------------------------------
02 公用体 union
结构体和共用体的区别。
01 结构体struct的尾地址是下一个结构体的首地址。
02 共用体union:共用体,共用大家的起始空间,
03 enum枚举关键词
被命名常数的集合;
常数的定义:在程序编译的过程中,常量不能改变。
典型定义常数的方式
#define MON 0;
#define AD 2;
#define SC 3;
enum 枚举名称{常量列表}
例子:
enum week{
monday = 0,tuesday = 2,wensday = 3,sesday = 3,…
}
// 枚举定义的形式
enum 枚举定义的名字{
a,b,c,........,//输出数值默认为0;
};
// 举例
enum week {
wesday = 0,
tusday =1,
.
.
};
// 使用定义里面的枚举
printf("wesday=%d",wensday);
//打印输出屏幕的数值
wesday = 0;