条件编译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表示,这样往往需要对源程序作必要的修改,这就降低了程序的通用性。

易探云:买香港/美国/国内云服务器送QQ音乐绿钻豪华版1年,价值180元

易探云产品限时秒杀&QQ音乐典藏活动正在进行中!购买易探云香港/美国云服务器送QQ音乐绿钻豪华版1年,价值180元,性价比超级高。目前,有四大核心福利产品推荐:福利一、香港云服务器1核1G2M,仅218元/年起(香港CN2线路,全球50ms以内);福利二、美国20G高防云服务器1核1G5M,仅336元/年起(美国BGP线路,自带20G防御);福利三、2G虚拟主机低至58.8元/年(更有免费...

iWebFusion:独立服务器月付57美元起/5个机房可选,10Gbps服务器月付149美元起

iWebFusion(iWFHosting)在部落分享过很多次了,这是成立于2001年的老牌国外主机商H4Y旗下站点,提供的产品包括虚拟主机、VPS和独立服务器租用等等,其中VPS主机基于KVM架构,数据中心可选美国洛杉矶、北卡、本德、蒙蒂塞洛等。商家独立服务器可选5个不同机房,最低每月57美元起,而大流量10Gbps带宽服务器也仅149美元起。首先我们分享几款常规服务器配置信息,以下机器可选择5...

香港站群多ip服务器多少钱?零途云香港站群云服务器怎么样?

香港站群多ip服务器多少钱?想做好站群的SEO优化,最好给每个网站都分配一个独立IP,这样每个网站之间才不会受到影响。对做站群的站长来说,租用一家性价比高且提供多IP的香港多ip站群服务器很有必要。零途云推出的香港多ip站群云服务器多达256个IP,可以满足站群的优化需求,而且性价比非常高。那么,香港多ip站群云服务器价格多少钱一个月?选择什么样的香港多IP站群云服务器比较好呢?今天,小编带大家一...

条件编译为你推荐
动画技术三渲二是种怎样的动画技术,比起传统3D有哪些优计算机网络的定义计算机的网络定义是什么?它有哪两种网络?互联网接入计算机接入因特网的方式有哪几种开发管理如何做好新产品的上市和开发管理网通玩电信游戏卡怎么办我的网是网通,我玩电信区的游戏,总是卡,怎么办呢软件更新不可用手机软件突然更新不了怎么办ldap统一用户认证介绍NIPS是什么认证?青岛it社区青岛市有多少个社区?地址电话名字给我留下人工电源网络EMC测试的介绍短信认证移动怎样用短信实名认证
中国万网域名注册 3322动态域名 新加坡服务器 圣迭戈 有益网络 静态空间 阿里校园 创建邮箱 河南移动梦网 贵阳电信测速 测试网速命令 重庆联通服务器托管 SmartAXMT800 reboot 删除域名 winserver2008下载 美国达拉斯 vim命令 瓦工技术 电脑主机打不开 更多