单片机程序关于函数的结构,请大神指点!!
typedefenum{GPIO_Mode_AIN=0x0,GPIO_Mode_IN_FLOATING=0x04,GPIO_Mode_IPD=0x28,GPIO_Mode...
typedef enum
{ GPIO_Mode_AIN = 0x0,
GPIO_Mode_IN_FLOATING = 0x04,
GPIO_Mode_IPD = 0x28,
GPIO_Mode_IPU = 0x48,
GPIO_Mode_Out_OD = 0x14,
GPIO_Mode_Out_PP = 0x10,
GPIO_Mode_AF_OD = 0x1C,
GPIO_Mode_AF_PP = 0x18
}GPIOMode_TypeDef;
括号外面的GPIOMode_TypeDef有起到什么作用吗?怎么不放进里面呢 展开
{ GPIO_Mode_AIN = 0x0,
GPIO_Mode_IN_FLOATING = 0x04,
GPIO_Mode_IPD = 0x28,
GPIO_Mode_IPU = 0x48,
GPIO_Mode_Out_OD = 0x14,
GPIO_Mode_Out_PP = 0x10,
GPIO_Mode_AF_OD = 0x1C,
GPIO_Mode_AF_PP = 0x18
}GPIOMode_TypeDef;
括号外面的GPIOMode_TypeDef有起到什么作用吗?怎么不放进里面呢 展开
1个回答
展开全部
主要要理解typedef 的含义:
C语言允许为一个数据类型起一个新的别名,就像给人起“绰号”一样。
起别名的目的不是为了提高程序运行效率,而是为了编码方便。
GPIOMode_TypeDef 这个就是给enum类型数据取得别名,到时候定义变量就可以使用
GPIOMode_TypeDef v1, v2; 这样。
举个列子
typedef struct Student
{
int no;
char name[10];
}STU;
有了这个定义,那定义结构体变量可以用
sturct Student st1;
也可以用
STU st1;
他们是等价的,因为STU是struct Student 的“别名”。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询