已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
回顾 函数定义函数递归调用静态和动态存储 问题 常用函数独立一个文件 使用时需要包含调试程序和使用程序时需要不同的输入方式等符号常量的使用等 第九章预处理命令 Focus掌握宏定义和文件包含的使用 编译预处理命令以 开头 编译预处理命令放在文件开头 后面不加 号 编译预处理 主要有三种 1 宏定义2 文件包含3 条件编译 definePRNprintf d f k x voidmain intk 3 floatx 8 975 PRN 一 不带参数的宏定义 definePI3 1415926 第一节宏定义 说明 1 宏名习惯用大写字母表示 2 可代替字符串 数值 表达式 语句等 3 宏代换在编译以前进行并完成 4 宏展开仅忠实替换 不做语法检查 结果 20 S 4 5 5 4 S x 2 y 2 y 2 x 2 25 6 二 带参数的宏定义 参数替换 defineS t w w tvoidmain floatx 5 5 y 12 6 printf d n S 4 5 printf f n S x 2 y 2 1 替换时 可以是各种类型的量 2 替换时不做计算 3 可嵌套定义 definePI3 1415926 defineS r PI r r 说明 第二节文件包含处理 文件包含编译预处理命令格式 include或 include 文件名 表示在源文件所在目录以外的目录中查找要包含的文件 文件名 表示先在源文件所在目录中查找要包含文件 若没找到再在源文件所在目录以外的目录中查找要包含的文件 使用文件包含指令时应注意几个问题 1 一个 include指令只能包含一个文件 要包含多个文件就要用多个 include指令 2 文件包含可以嵌套 比如文件file1中含有指令 include f2 c 而在文件f2 c中又有 include include f3 c 则file1也把f2 c中包含的文件全部包含进来 3 被包含文件中的全局变量也是包含文件中的全局变量 因此在包含文件中对这些量不必再加ertern说明即可引用 4 被包含文件的扩展名一般用 h 头 表示是在文件开头加进来的 其内容可以是程序文件或数据文件 也可以是宏定义 全局变量声明等 这些数据有相对的独立性 可被多个文件使用 不必在多个文件中都去定义 而只在一个文件中定义 其他文件中包含这个定义文件即可 第三节条件编译 其中若已用 define命令定义过 则编译 程序段1 形式1 ifdef 程序段1 else 程序段1 endif 例 include defineTtruemain ifdefTprintf 编译程序1 elseprintf 编译程序2 endif main printf 编译程序1 等价于 形式2 ifndef 程序段1 else 程序段2 endif逻辑和作用与形式1相反 defineORDER1main intk ifORDERfor k 1 k 11 k printf d k elsefor k 11 k 1 k printf d k endif main intk for k 1 k 11 k printf d k 形式3 if 程序段1 else 程序段2 endif 课堂例题 课后练习 2 预处理命令可能具有如下特点 1 均以 开头 2 必在程序开头 3 后面不加分号 4 在真正编译前处理正确的说法是 预处理命令具有以下 条特点 A1 2B1 3 4C1 3D1 2 3 4 1 编译预处理包括 A 文件包含 宏定义和预编译B 构造工程文件C 语句注释D 编辑源程序 3 假设有宏定义 defineNUM15 defineDNUMNUM NUM则表达式DUNM 2 NUM 2的值为 52 4 程序段如下 defineN2 defineMN 1 defineNUM2 M 1voidmain inti intsum 0 for i 1 i NUM i sum i sum最后的值为 21 2 M 1 2 N 1 1 2 2 1 1 5 下列程序的输出结果为 definep v format printf v format v defines x 3 5 x xmain inta 1 b 2 floats1 s1 s a b p s1 f Av 14 0Bs1 31 5Cv 7 5ormatDs1 7 5ormat s1 s a b s1 3 5 a b
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《物理光学》课程教学大纲
- 2024年低价乡下小院出租合同范本
- 2024年出售东电楼房合同范本大全
- 2024年承接土方业务合同范本
- IMF报告:亚太地区经济展望报告
- 浙江省强基联盟2024-2025学年高二上学期11月联考物理试题(含解析)
- 2024新版企业招标承包经营合同
- 2024店面出租合同范本
- 2024个人借款合同范本的模板
- 2024至2030年中国移动感应器数据监测研究报告
- 中国铁路国际有限公司招聘考试试卷2022
- DB34∕T 2290-2022 水利工程质量检测规程
- 国开(河北)2024年《公文写作》形考作业4答案
- 电信行业移动通信网络质量提升方案
- 2021年山东省职业院校技能大赛导游服务赛项-导游英语口语测试题库
- 古代小说戏曲专题-形考任务2-国开-参考资料
- 文印竞标合同范本
- 2024至2030年中国汽车EPS无刷电机行业市场前景预测与发展趋势研究报告
- 人教版道德与法治五年级上册全册单元测试卷课件
- 2024-2030年中国聚醚醚酮树脂行业市场发展趋势与前景展望战略分析报告
- 2019版外研社高中英语必选择性必修一-四单词
评论
0/150
提交评论