当前位置: 首页 > ops >正文

C语言宏替换比较练习

题目描述

关于#include 的应用练习。

test.h 文件代码如下:

#define LAG >
#define SMA <
#define EQ ==

主文件代码

#include "test.h"  
#include <stdio.h>
int main()
{int i=10;int j=20;if(i LAG j)printf("%d 大于 %d \n",i,j);else if(i EQ j)printf("%d 等于 %d \n",i,j);else if(i SMA j)printf("%d 小于 %d \n",i,j);elseprintf("没有值。\n");return 0;
}

关键在于理解宏定义 #define 的替换机制与条件判断逻辑的结合运用。通过 test.h 中 #define 将 LAG 、 SMA 、 EQ 分别替换为 > 、 < 、 == ,主程序里借助这些宏定义简化比较符号书写,核心是预编译阶段宏会被原样替换,进而让 if-else 条件判断依据替换后的比较逻辑执行,以此实现对变量 i 和 j 大小关系的判断与输出。

输出结果

10 小于 20 
http://www.xdnf.cn/news/14940.html

相关文章:

  • .NET9 实现对象深拷贝和浅拷贝的性能测试
  • C#使用Semantic Kernel实现Embedding功能
  • 自动化一次通过率
  • LLM探索的时代
  • 【web安全】SQLMap 参数深度解析:--risk 与 --level 详解
  • leetcode202.快乐数
  • 【数据结构】复杂度分析
  • 【王树森推荐系统】召回11:地理位置召回、作者召回、缓存召回
  • LeetCode 1248.统计优美子数组
  • Coze智能体工作流:1分钟生成10个儿童卡通童话故事视频,无需剪辑
  • 一天一道Sql题(day02)
  • 单机分布式一体化数据库的架构设计与优化
  • Android Handler机制与底层原理详解
  • 【芯片测试篇】:93K测试机I2C的设置和调试
  • 可达性分析算法Test1
  • 基于springboot的非遗传承宣传平台
  • 短视频矩阵管理平台的崛起:源头厂商的深度解析
  • 车载通信架构 --- 以太网相关网络安全
  • c++文件操作
  • Git 安装避坑指南:从环境检查到高级配置的全流程解析
  • Java项目:基于SSM框架实现的旅游协会管理系统【ssm+B/S架构+源码+数据库+毕业论文】
  • 猎板解析PCB低损耗基材:AI与高频通信的隐形推手
  • 谁主沉浮:人工智能对未来信息技术发展路径的影响研究
  • C++高频知识点(六)
  • 【Python】Python Socket 编程详解:从原理到实践
  • 基于Java+Maven+Testng+Selenium+Log4j+Allure+Jenkins搭建一个WebUI自动化框架(1)搭建框架基本雏形
  • 实战:Android 15 (API 35) 适配 构建踩坑全记录
  • 鼎捷T100程序开发(R报表开发完整流程)
  • Bright Data MCP+Trae :快速构建电商导购助手垂直智能体
  • RabbitMQ第一章(MQ基础与RocketMQ使用手册)