作者:strongerHuang 微信公众号:strongerHuang 1写在前面2 HAL库中do{} while(0U)宏定义在HAL库中,很多.h文件都有do{...} while(0U)这样的宏定义,比如:在stm32f1xx_hal_rcc.h中,使能GPIO时钟: 对比在LL库中时钟使能代码,如下: 3 do{...} while(0U)宏定义的作用和意义1.编译出错 不使用do{}while: 使用大括号,多一个分号: 使用do{...} while(0U): 大家对比以上几种,你觉得哪一种合理? 2.避免goto跳转语句带来问题 不使用do{}hwile(0): 使用do{}hwile(0): 大家再对比以上两种,发现了什么问题? 我这里也不再继续举例说明了,大家可以上网了解,其实还有很多重要意义和作用。 怎么说呢,点到为止,希望对你有启发。 |
|