- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言编程教程 第9章 预处理
教学要点 编译预处理 宏定义 文件包含 条件编译 编译预处理 一、含义: 编译预处理是C编译系统的一个组成部分。 二、目的: 将预处理的结果和源程序一起再进行通常的编译处理,以得到目标代码。 三、实现方法: 通过使用几种特殊的命令,在进行程序的编译之前,先对这些特殊命令进行处理。 四、主要内容: 1.宏定义; 2.文件包含; 3.条件编译. 宏定义 一、不带参数的宏定义: 1、含义:用一个指定的标识符来表示一个字符串。 2、格式: #define 标识符 字符串 其中:“标识符”被称为宏。 3、作用:使用户能以一个简单的名字代替一个长的字符串。 4、实现:在预编译时将宏名替换成字符串(宏展开)。 如:#define PI 3.14159 在程序中将标识符PI代替为“3.1415”这个字符串。 5、例9-1: 6、使用要点: 例9-1:分析下列的程序: 宏定义要点 1.宏名一般都用大写字母表示,以区别于变量; 2.宏定义只是用宏名替代一个字符串,减少了在程序中书写某些字符串的工作量; 3.宏定义不是语句,不必再其后加上“;”; 4.#define命令出现在函数的外面,它的有效范围是定义之后到本源文件的结束; 5.可以使用#undef命令终止宏定义的有效范围; 6.在宏定义中可以进行多层的替代. 二、带参数的宏定义 1、定义: #define 宏名(参数表) 字符串 2、作用: 不只是进行简单的字符串替换,还要进行参数的置换。 3、例9-2、9-3: 4、宏展开过程的要点: 对于带参数的宏的展开就是用实际参数代替宏定义时的形式参数; 在宏定义时,宏名与带参数的括号之间不应加空格,否则,空格也作为字符的组成部分; 例9-2 带参数的宏定义 #define s(a,b) a*b …. area=s(3,2); 例9-3:分析程序写出结果. 文件包含 1、含义: 将一个源文件的内容完全包含在另一个文件之中. 2、一般形式:#include “文件名”(或文件名) 3、功能:可以减少程序设计人员的重复劳动。 4、例9-4: 5、使用要点: 例9-4:分析程序写出结果: file.h 文件包含要点 1、一个#include命令只能指定一个被包含的文件,若要包含n个文件,应使用n个#include命令; 2、若文件1包含文件2,而文件2中要用到文件3的内容,则可在文件1中用2个#include命令分别包含文件2和文件3,而且文件3应出现在文件2之前,如下表示: file1.c #include “file3.h” #include “file2.h” ... 3、文件包含可以嵌套。 4、“”与在#include中的区别: 使用“”时,系统若在源程序文件目录中找不到被包含的文件,则将按系统指定的标准方式检索其他目录; 使用时,系统只按指定的标准方式检索其他目录; 5、预编译后的包含文件和源程序文件成为一个文件,所有的extern变量将成为源程序文件中的全局静态变量。 条件编译 一、引入条件编译的原因: 只对源程序中满足条件的部分内容进行编译。 可以减少被编译的语句,从而减少目标程序的长度。 二、定义形式: 方式1: #ifdef 标识符 程序段1 #else 程序段2 #endif 三、例9-5: 例9-5:分析程序写出结果: C程序设计 * / 16 area=S(3,2) 得3*2 #define S(a,b) a*b #include “flie2.c” A file1.c B file2.c B A file1.c file.c 方式2: #ifndef 标识符 程序段1 #else 程序段2 #endif 方式3: #if 表达式 程序段1 #else 程序段2 #endif * * * *
您可能关注的文档
- AUTODYN4.3用户手册(中文)1.doc
- AUTODYN4.3用户手册(中文)2.doc
- AUTODYN培训三.ppt
- autodyn培训练习1_熟悉菜单.pdf
- AUTODYN培训五.ppt
- autodyn培训练习2_铜弹侵彻铝板.pdf
- autodyn培训练习1_头盔碰撞.pdf
- autodyn培训练习Mine-Blast-on-Structure.pdf
- Autodyn理论 ALE.pdf
- Autodyn理论 JETTING.pdf
- 山西省运城市2021-2022学年高二上学期期末调研测试英语试卷 (原卷版).docx
- 黄金卷08-【赢在高考·黄金8卷】备战2024年高考英语模拟卷(新高考Ⅰ卷专用)(考试版).docx
- 专题 12 单句语法填空(语法类)【考题猜想】(解析版) (1).docx
- 【读后续写】Extra_good_luck_读写公开课_尹娟.pptx
- 【读后续写】顾芳园概要写作课件.pptx
- 【高一上期末】2019-2020学年广西南宁市第三中学高一上学期期末英语试题(解析版).doc
- 【高一下期末】黑龙江省哈尔滨市六校2021-2022学年高一下学期期末联考英语试题(解析版).docx
- 无畏风霜,勇毅前行-中国女足主题班会(含视频)-2021-2022学年高中主题班会优质课件.pptx
- 专题18:小说阅读之探究小说的标题(原卷版) (1).docx
- 【期末试卷】2021-2022学年西藏林芝市第二高级中学高二上学期第二学段考试(期末)语文试题.docx
最近下载
- 37、 4-6岁 《忙碌的立交桥》.pptx
- 2024年医师定考业务水平口腔类别题库及答案 .pdf VIP
- 荀子劝学课件1.ppt VIP
- 4.1 水循环 教案 2023-2024学年湘教版(2019)高中地理必修一.docx VIP
- 北师大版四年级数学上册乘法分配律练习题.pdf VIP
- 储能电站能源管理合同范本.pdf VIP
- 新人教版三年级上册数学第八单元《分数的初步认识复习课》名师教学课件.pptx
- 【产品手册】路博润Lubrizol_公司宣传册Brochure_Corporate_Overview2.docx
- 19028 安全生产治本攻坚三年行动方案(工程施工项目) (1).docx VIP
- 第十七章 学校组织管理PPT.ppt
文档评论(0)