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

SugarHosts新增Windows云服务器sugarhosts六折无限流量云服务器六折优惠

SugarHosts糖果主机商我们较早的站长们肯定是熟悉的,早年是提供虚拟主机起家的,如今一直还在提供虚拟主机,后来也有增加云服务器、独立服务器等。数据中心涵盖美国、德国、香港等。我们要知道大部分的海外主机商都只提供Linux系统云服务器。今天,糖果主机有新增SugarHosts夏季六折的优惠,以及新品Windows云服务器/云VPS上线。SugarHosts Windows系统云服务器有区分限制...

Ceraus24元/月,国庆促销 香港云上新首月五折

Ceraus数据成立于2020年底,基于KVM虚拟架构技术;主营提供香港CN2、美国洛杉矶CN2、日本CN2的相关VPS云主机业务。喜迎国庆香港上新首月五折不限新老用户,cera机房,线路好,机器稳,适合做站五折优惠码:gqceraus 续费七五折官方网站:https://www.ceraus.com香港云内存​CPU硬盘流量宽带优惠价格购买地址香港云2G2核40G不限5Mbps24元/月点击购买...

小欢互联19元/月起, 即日起至10月底 美国CERA 促销活动 美国/香港八折

小欢互联成立于2019年10月,主打海外高性价比云服务器、CDN和虚拟主机服务。近期上线了自营美国CERA机房高速VPS,进行促销活动,为客户奉上美国/香港八折优惠码:Xxc1mtLB优惠码适用于美国CERA一区/二区以及香港一区/二区优惠时间:即日起至10月底优惠码可无限次使用,且续费同价!官网:https://idc.xh-ws.com购买地址:美国CERA一区:https://idc.xh-...

条件编译为你推荐
我的文档win7系统我的文档在哪商品管理手机千牛 商品管理用哪个好啊 我想买高级版的 不知道哪个比较好网络设备图标怎样把无线网络连接的图标显示出来显示系统电脑开机显示各种系统选项是什么回事余额宝收益走势图现在余额宝大概每万份收益是多少?u盾证书U盾证书在哪里?反恐精英维护到几点反恐精英OL要从几点维护到几点?access数据库入门access的用法?it人物IT界名人有哪些?本地连接断开本地连接经常断开是怎么回事?
qq域名邮箱 郑州服务器租用 vps是什么 国外vps 中国域名网 免费顶级域名 西安服务器 瓦工 hostgator jsp主机 webhostingpad ibox官网 100m免费空间 阿里云浏览器 韩国名字大全 中国网通测速 石家庄服务器托管 免费蓝钻 主机返佣 测试网速命令 更多