C语言结构体与枚举类型
一、结构体

这是定义了一个结构体变量c,成员是x,y,z。
又已知typedef用于给变量改名,例如
typedef unsigned char uint8_t;
就是把unsigned char数据类型给个新名字unint8_t。
那么,使用
typedef struct{ char x; int y; float z; }StructName_t;
这种常见的形式,把struct{charx; int y; float z;} 这种结构体类型重命名为StructName_t,此后就能用StructName_t c; StructName_t d; 来定义结构体变量。
GPIO_InitTypeDef GPIO_InitStruct; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStruct.GPIO_Pin = GPIO_Pin_All; GPIO_InitStruct.GPIO_Speed = GPIO_Pin_12; GPIO_Init(GPIOB,&GPIO_InitStruct);
如上述代码中,GPIO_InitTypeDef是结构体类型的名字,GPIO_InitStruct是结构体变量的名字。
二、枚举

typedef enum{ FALSE=0, TRUE=1 }HAHA; HAHA X1; HAHA X2; X1=FALSE; //X1=0 X2=TRUE; //X2=1
HAHA是枚举类型的名字,X1,X2是枚举变量的名字,这俩变量的赋值只能在限制的范围内给出,也就是只能给FALSE或TRUE。

浙公网安备 33010602011771号