条件编译C语言中条件编译的实例

条件编译  时间:2021-08-25  阅读:()

如何根据单片机端口状态来进行条件编译

端口状态只是让单片机选择要运行的程序段。

不是条件编译。

各状态下的程序都是编译了下载到单片中的,端口状态是用来选择,程序运行哪一段。

就程序中普通的if 判断跳转。

就是不运行的程序段也是下载到单片机中,占程序空间的。

条件编译,是在代码中加条件开关,在电脑上编译时,如果某个条件不成立,就不编译其中的程序段。

这样编译好的程序代码下载到单片机中就定死了只能执行在编译时条件成立的程序,因为只编译了这部分。

没有编译的是不占程序空间的。

C语言中条件编译和If语句之间的差别,各适用于什么情况

展开全部 条件编译是C语言中预处理部分的内容,它是编译器编译代码时最先处理的部分, 条件编译里面有判断语句,比如 #if 、#else 、#elif 及 #endif 它的意思是如果宏条件符合,编译器就编译这段代码,否则,编译器就忽略这段代码而不编译,如 #define A 0 //把A定义为0 #if (A > 1) printf("A > 1"); //编译器没有编译该语句,该语句不生成汇编代码 #elif (A == 1) printf("A == 1"); //编译器没有编译该语句,该语句不生成汇编代码 #else printf("A < 1"); //编译器编译了这段代码,且生成了汇编代码,执行该语句 #endif 而 if 语句则不然,if 是 C 语言中的关键字,它根据表达式的计算结果来觉定执行那个语句,它里面的每个分支都编译了的, 如 #define A 0 if (A > 1) printf("A > 1"); //编译器编译该语句,但因为A == 0 未执行 else if(A == 1) printf("A == 1"); //编译器编译该语句,但因为A == 0 未执行 else printf("A < 1"); //编译器编译该语句,因为A == 0 故执行 所以 简单地讲,条件编译是根据 宏条件 选择性地编译语句,它是编译器在编译代码时完成的; 条件语句是根据条件表达式选择性地执行语句,它是在程序运行时进行的。

C语言中条件编译的实例

条件编译命令最常见的形式为: #ifdef 标识符 程序段1 #else 程序段2 #endif 它的作用是:当标识符已经被定义过(一般是用#define命令定义),则对程序段1进行编译,否则编译程序段2。

其中#else部分也可以没有,即: #ifdef 程序段1 #endif 这里的“程序段”可以是语句组,也可以是命令行。

这种条件编译可以提高C源程序的通用性。

如果一个C源程序在不同计算机系统上系统上运行,而不同的计算机又有一定的差异。

例如,我们有一个数据类型,在Windows平台中,应该使用long类型表示,而在其他平台应该使用float表示,这样往往需要对源程序作必要的修改,这就降低了程序的通用性。

Vultr再次发布充值多少送多少活动

昨天我们很多小伙伴们应该都有看到,包括有隔壁的一些博主们都有发布Vultr商家新的新用户注册福利活动。以前是有赠送100美元有效期30天的,这次改成有效期14天。早年才开始的时候有效期是60天的,这个是商家行为,主要还是吸引到我们后续的充值使用,毕竟他们的体验金赠送,在同类商家中算是比较大方的。昨天活动内容:重新调整Vultr新注册用户赠送100美元奖励金有效期14天今天早上群里的朋友告诉我,两年...

日本美国站群服务器raksmart站群新增,限量低至月1.99美元

RAKsmart 商家八月份的促销活动今天更新。基本上和上个月的产品套餐活动差不多的,不过也是有简单的微调。对于RAKsmart商家还是比较了解的,他们家产品虽然这两年增加多个机房,以及在VPS主机方案上有丰富的机房和调整到一些自营机房,他们家的策划能力还是有限,基本上每个月的套餐活动都差不多。RAKsmart 在八月份看到有新增香港高防服务器可选,最高100GB防御。同时原来上个月缺货的日本独立...

Dynadot多种后缀优惠域名优惠码 ,.COM域名注册$6.99

Dynadot 是一家非常靠谱的域名注册商家,老唐也从来不会掩饰对其的喜爱,目前我个人大部分域名都在 Dynadot,还有一小部分在 NameCheap 和腾讯云。本文分享一下 Dynadot 最新域名优惠码,包括 .COM,.NET 等主流后缀的优惠码,以及一些新顶级后缀的优惠。对于域名优惠,NameCheap 的新后缀促销比较多,而 Dynadot 则是对于主流后缀的促销比较多,所以可以各取所...

条件编译为你推荐
组或资源的状态不是执行请求操作的正确状态无法启动承载网络,组或资源状态下不是执行请求操作的正确状态!查杀木马请问有什么方法查杀木马混乱模式拳皇2002的李梅怎么进入混乱模式?化学键理论关于化学键的知识2g内存条2G的内存条和8G的内存条有什么不同无线存储MVPEN数码笔无线存储功能只有在开会的时候用吗?反恐精英维护到几点反恐精英几点维护完锤子手机发布会视频锤子手机怎么样 锤子手机评测人工电源网络EMC测试的介绍信息发布管理系统信息发布系统属于建筑智能工程哪个分部
哈尔滨服务器租用 域名服务器的作用 花生壳域名贝锐 2019年感恩节 独享100m 香港托管 免费名片模板 dropbox网盘 彩虹ip 浙江独立 cpanel空间 毫秒英文 最好的qq空间 台湾谷歌 无限流量 网购分享 免费的域名 东莞主机托管 国外免费云空间 godaddyssl 更多