综合技术
直播中

h1654155275.5771

8年用户 225经验值
私信 关注
[问答]

请问宏定义的标识符能作为枚举使用吗?

#define GPIOA               ((GPIO_TypeDef *) GPIOA_BASE)
#define GPIOB               ((GPIO_TypeDef *) GPIOB_BASE)
#define GPIOC               ((GPIO_TypeDef *) GPIOC_BASE)
#define GPIOD               ((GPIO_TypeDef *) GPIOD_BASE)
#define GPIOE               ((GPIO_TypeDef *) GPIOE_BASE)
#define GPIOF               ((GPIO_TypeDef *) GPIOF_BASE)
#define GPIOG               ((GPIO_TypeDef *) GPIOG_BASE)
以上是STM32f10x.h里的宏定义。
我的问题是:能像下面这样用吗?
typedef enum
{
         GPIOB ,       //PB端口
         GPIOE         //PE端口
} GPIOX;

回帖(16)

王莹

2019-11-7 06:48:53
当然可以。
普通宏定义就是简单的字符替换,随便用。
举报

李俊

2019-11-7 06:54:59

是这样用吗?
举报

李建设

2019-11-7 07:13:21
大神求解。。。
举报

薛丽娜

2019-11-7 07:31:56
这不是宏定义的问题了。
你试着把原始字符串放进来。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分