#if defined 和#elif defined 的用法问题

leiguoyu38 2012-04-09 10:52:16
#if defined
....
#elif defined
.... 的用法是什么意思


原代码如下:
#if defined (USE_STM3210C_EVAL)
GPIO_InitTypeDef GPIO_InitStructure;
EXTI_InitTypeDef EXTI_InitStructure;
....
#elif defined (USE_STM3210B_EVAL)

GPIO_InitTypeDef GPIO_InitStructure;
EXTI_InitTypeDef EXTI_InitStructure;
...
...全文
3655 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jingyonghe 2012-04-11
  • 打赏
  • 举报
回复
在配置debug的那个选项找到C/c++ 就是小锤子那个 弱弱这论坛这么发图的 或者你在开始时候define这个就得了 其他屏蔽掉
[Quote=引用 9 楼 的回复:]

keil里 那有没-c/c++的选项呀
[/Quote]
afei8856 2012-04-10
  • 打赏
  • 举报
回复
给编译器的
leiguoyu38 2012-04-10
  • 打赏
  • 举报
回复
keil里 那有没-c/c++的选项呀
jingyonghe 2012-04-10
  • 打赏
  • 举报
回复
选项-C/C++ 然后有个define 估计你的程序在st官网下载的 这个是选择官方的开发板用的
leiguoyu38 2012-04-10
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]嗯stm32。编译成101010。。。还跟keil里面什么选项有关?
nandou 2012-04-09
  • 打赏
  • 举报
回复
和if else 差不多,只不过#if defined #elif defined 是给编译器看的,你可以查下调节编译。
yoveldf 2012-04-09
  • 打赏
  • 举报
回复
兼容性
空影 2012-04-09
  • 打赏
  • 举报
回复
这是基本知识啊,建议楼主先看些C语言的入门书籍
lbing7 2012-04-09
  • 打赏
  • 举报
回复
这个叫条件编译指令

属于基础的语法范畴,LZ可以去考科书里补一下
jingyonghe 2012-04-09
  • 打赏
  • 举报
回复
keil载图了 但是不知怎么发给你
jingyonghe 2012-04-09
  • 打赏
  • 举报
回复
就是如果定义了USE_STM3210C_EVAL,编译器就把下面的东西编译成101010,其他几个一样 LZ用STM32的吧 KEIL选项里面可以定义的

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧