//第一段:assert_param(IS_NVIC_PRIORITY_GROUP(NVIC_PriorityGroup));
//第二段:
#define IS_NVIC_PRIORITY_GROUP(GROUP) (((GROUP) == NVIC_PriorityGroup_0) ||
((GROUP) == NVIC_PriorityGroup_1) ||
((GROUP) == NVIC_PriorityGroup_2) ||
((GROUP) == NVIC_PriorityGroup_3) ||
((GROUP) == NVIC_PriorityGroup_4))
感觉后面最终的第二段就是判断是不是相等,那么就是0和1。那最终的结果会是:assert_param(0或1);
那么assert_param(0)与assert_param(1),在最终替换成: #define assert_param(expr) ((void)0)
这样的话,#define assert_param(expr) ((void)0)究竟有啥意义?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>