宏定义
- 宏定义跟多个参数
宏定义跟多个参数
由于keil配置了库函数包,编译出现错误如下:
.\Objects\new.axf: Error: L6218E: Undefined symbol assert_param (referred from stm32f4xx_gpio.o)
原因是keil配置中少个宏
在stm32f4xx.h中,可以看到
由此可见不配置USE_STDPERIPH_DRIVER无法包含stm32f4xx_conf.h
看到一个用法
#if defined A|| defined B /* A或 B被定义,则选择执行printf1,否则执行printf2 */
printf1(".....");
#else
printf2(".....");
#endif
#if !defined A|| !defined B /* A或 B未被定义,则选择执行printf1,否则执行printf2 */
printf1(".....");
#else
printf2(".....");
#endif
#if defined 和 #if !defined能跟多个宏定义参数
#ifdef和#ifndef仅能跟一个宏定义参数,不能使用表达式
本文地址:https://blog.csdn.net/baitang886/article/details/109639942